Skip to main content
Overleaf tilbyr en integrasjon med knitr, som lar deg legge til R-kode i LaTeX-dokumentet ditt for å generere dynamisk utdata. Dokumenter som inneholder R-kode, må lagres med filtypen .Rtex eller .Rnw, ellers vil ikke koden fungere. La oss se på et eksempel:
KnitrDemo1.png Åpne dette knitr-eksemplet i Overleaf Som du ser, er teksten mellom tegnene <<>>= og @ R-kode. Denne koden og utdataene fra den skrives ut i et listing-lignende format. Denne kodebiten kan ta noen ekstra parametere for å tilpasse den dynamiske utdataen, som beskrevet i neste del.

Kodebiter (chunks)

En kodeblokk som den i forrige del kalles vanligvis en chunk. Du kan angi noen ekstra alternativer i knitr-chunks. Se eksemplet nedenfor:
KnitrDemo2.png Åpne dette knitr-eksemplet i Overleaf Det sendes inn to ekstra alternativer mellom << og >>.
  • echo=FALSEDette skjuler koden og skriver bare ut utdataene som R genererer.
  • cache=TRUEHvis cache er satt til true, kjøres ikke chunken, bare objektene den genererer brukes. Dette sparer tid hvis dataene i chunken ikke er endret.
    Merk at alternativet cache=TRUE for øyeblikket ikke støttes i Overleaf, men det skal fungere lokalt.
Se referanseguiden for flere alternativer.

Innebygde kommandoer

Det er mulig å få tilgang til objekter generert i en chunk og skrive dem ut i teksten.
KnitrDemo3.png Åpne dette knitr-eksemplet i Overleaf Kommandoen \Sexpr{mean(X)} skriver ut resultatet som returneres av R-koden mean(X). Inne i klammeparentesene kan du sende inn en hvilken som helst R-kommando.

Plott

Plott kan også legges til i et knitr-dokument, som i dette eksemplet:
KnitrDemo4.png Åpne dette knitr-eksemplet i Overleaf Dette histogrammet bruker data lagret i “data.txt”, som ligger i gjeldende arbeidskatalog. Noen figurrelaterte alternativer sendes til chunken. plot1Dette er etiketten som brukes til å referere til plottet. Prefikset “fig:” er obligatorisk. Du ser i eksemplet at figuren refereres med \ref{fig:plot1}.fig.pos="t" plasseringsparameter. Dette er det samme som brukes i figure-miljøet.fig.height=4, fig.width=4Figurens bredde og høyde.fig.cap="First plot"Bildetekst for figuren.

Eksterne R-skript

Du kan importere deler av et eksternt R-skript til et knitr-dokument. Dette er svært nyttig, siden det er ganske vanlig å skrive og feilsøke skriptet i et eksternt program før det tas med i dokumentet. Anta at vi har følgende R-kode i en fil kalt mycode.R, som vi inkluderer i LaTeX-dokumentet vårt:
Legg merke til linjene:
og
Disse markerer begynnelsen på en kodebit og er obligatoriske hvis du vil bruke dette skriptet i dokumentet, som vist i følgende kodefragment:
KnitrDemo5.png Den første chunken skrives ikke ut og brukes bare til å importere skriptet med kommandoen read_chunk("mycode.R"). Det er derfor alternativet echo=FALSE er satt. Skript må heller ikke mellomlagres. Når skriptet er importert, kan du skrive ut en chunk ved hjelp av etiketten du anga etter ## ----. I dette tilfellet er det myrcode2. Vi har samlet alle kodefragmentene fra artikkelen i et prosjekt som du kan åpne i Overleaf.

Referanseguide

Noen alternativer for chunks:
  • results. Endrer hvordan resultatene som genereres av R-koden, håndteres. Mulige verdier er:
    • markup Bruk LaTeX til å formatere utdataene.
    • asis Skriv ut rå resultater fra R.
    • hold Hold tilbake resultatene og flytt dem til slutten av chunken.
    • hide Skjul resultatene.
  • echo. Om R-kildekoden skal tas med. Andre parametere omfatter:
    • echo=2:3 skriver bare ut andre og tredje linje;
    • echo=-2:-3 utelater bare andre og tredje linje.
  • cache. Om kodebiten skal mellomlagres. Mulige verdier er: TRUE og FALSE
  • highlight. Om kildekoden skal fremheves. Mulige verdier er: TRUE og FALSE
  • background. Bakgrunnsfargen til chunken. Formatene rgb og HTML kan brukes. Standardverdien er “#F7F7F7”.
Sist endret 4. oktober 2026