Skip to main content
Overleaf bietet eine Integration mit knitr, mit der Sie R-Code in Ihr LaTeX-Dokument einfügen können, um eine dynamische Ausgabe zu erzeugen. Dokumente, die R-Code enthalten, müssen mit der Endung .Rtex oder .Rnw gespeichert werden, da der Code sonst nicht funktioniert. Sehen wir uns ein Beispiel an:
KnitrDemo1.png Dieses knitr-Beispiel in Overleaf öffnen Wie Sie sehen, ist der Text zwischen den Zeichen <<>>= und @ R-Code. Dieser Code und seine Ausgabe werden in einem listingähnlichen Format ausgegeben. Diesem Codeabschnitt können zusätzliche Parameter übergeben werden, um die dynamische Ausgabe anzupassen, wie im nächsten Abschnitt beschrieben.

Code-Chunks

Ein Codeblock wie der im vorherigen Abschnitt gezeigte wird üblicherweise als Chunk bezeichnet. Sie können in knitr-Chunks einige zusätzliche Optionen festlegen. Sehen Sie sich das folgende Beispiel an:
KnitrDemo2.png Dieses knitr-Beispiel in Overleaf öffnen Innerhalb von << und >> werden zwei zusätzliche Optionen übergeben.
  • echo=FALSE Blendet den Code aus und gibt nur die von R erzeugte Ausgabe aus.
  • cache=TRUE Wenn cache auf true gesetzt ist, wird der Chunk nicht ausgeführt, sondern nur die von ihm erzeugten Objekte verwendet. Das spart Zeit, wenn sich die Daten in diesem Chunk nicht geändert haben.
    Beachten Sie, dass die Option cache=TRUE in Overleaf derzeit nicht unterstützt wird, lokal jedoch funktionieren sollte.
Weitere Optionen finden Sie in der Referenz.

Inline-Befehle

Es ist möglich, auf in einem Chunk erzeugte Objekte zuzugreifen und sie im Fließtext auszugeben.
KnitrDemo3.png Dieses knitr-Beispiel in Overleaf öffnen Der Befehl \Sexpr{mean(X)} gibt die Ausgabe des R-Codes mean(X) aus. Innerhalb der geschweiften Klammern kann ein beliebiger R-Befehl übergeben werden.

Diagramme

Auch Diagramme können einem knitr-Dokument hinzugefügt werden, wie in diesem Beispiel:
KnitrDemo4.png Dieses knitr-Beispiel in Overleaf öffnen Dieses Histogramm verwendet Daten aus „data.txt“, das im aktuellen Arbeitsverzeichnis gespeichert ist. Dem Chunk werden einige abbildungsbezogene Optionen übergeben. plot1 Dies ist das Label, mit dem auf das Diagramm verwiesen wird. Das Präfix „fig:“ ist obligatorisch. Im Beispiel sehen Sie, dass mit \ref{fig:plot1} auf die Abbildung verwiesen wird. fig.pos="t" Positionierungsparameter. Dieser entspricht dem in der figure-Umgebung verwendeten. fig.height=4, fig.width=4 Breite und Höhe der Abbildung. fig.cap="First plot" Beschriftung der Abbildung.

Externe R-Skripte

Sie können Teile eines externen R-Skripts in ein knitr-Dokument importieren. Das ist sehr hilfreich, da es durchaus üblich ist, das Skript in einem externen Programm zu schreiben und zu debuggen, bevor man es in das Dokument einbindet. Angenommen, wir haben den folgenden R-Code in einer Datei namens mycode.R, die wir in unser LaTeX-Dokument einbinden:
Beachten Sie die Zeilen:
und
Diese markieren den Beginn eines Code-Chunks und sind erforderlich, wenn Sie dieses Skript in Ihrem Dokument verwenden möchten, wie im folgenden Codefragment gezeigt:
KnitrDemo5.png Der erste Chunk wird nicht ausgegeben und dient nur dazu, das Skript mit dem Befehl read_chunk("mycode.R") zu importieren. Deshalb ist die Option echo=FALSE gesetzt. Außerdem dürfen Skripte nicht gecacht werden. Sobald das Skript importiert ist, können Sie einen Chunk über das Label ausgeben, das Sie nach ## ---- festgelegt haben. In diesem Fall ist es myrcode2. Wir haben alle Codefragmente dieses Artikels in einem Projekt zusammengefasst, das Sie in Overleaf öffnen können.

Referenz

Einige Chunk-Optionen:
  • results. Ändert das Verhalten der vom R-Code erzeugten Ergebnisse. Mögliche Werte sind:
    • markup LaTeX zur Formatierung der Ausgabe verwenden.
    • asis Rohe Ergebnisse aus R ausgeben.
    • hold Die Ausgabeergebnisse zurückhalten und ans Ende des Chunks verschieben.
    • hide Ergebnisse ausblenden.
  • echo. Ob der R-Quellcode eingebunden werden soll. Weitere Parameter sind:
    • echo=2:3 gibt nur die zweite und dritte Zeile aus;
    • echo=-2:-3 schließt nur die zweite und dritte Zeile aus.
  • cache. Ob der Code-Chunk gecacht werden soll. Mögliche Werte sind: TRUE und FALSE
  • highlight. Ob der Quellcode hervorgehoben werden soll. Mögliche Werte sind: TRUE und FALSE
  • background. Hintergrundfarbe des Chunks. Es können RGB- und HTML-Formate verwendet werden. Der Standardwert ist “#F7F7F7”.
Zuletzt geändert am 4. Oktober 2026