Die Frage ist alt, erhält aber immer noch viel Aufmerksamkeit. Da die vorhandenen Antworten veraltet sind, finden Sie hier eine aktuellere Lösung:
Ändern der Größe lokaler Bilder
Ab knitr1.12 gibt es die Funktion include_graphics. Von ?include_graphics(Hervorhebung von mir):
Der Hauptvorteil dieser Funktion besteht darin, dass sie in dem Sinne portabel ist, dass sie für alle unterstützten Dokumentformate funktioniert. knitrSie müssen also nicht überlegen, ob Sie beispielsweise LaTeX- oder Markdown-Syntax verwenden müssen, um eine externe Funktion einzubetten Bild. Chunk-Optionen für die Grafikausgabe, die für normale R-Diagramme funktionieren, funktionieren auch für diese Bilder, z. B. out.widthund out.height.
Beispiel:
```{r, out.width = "400px"}
knitr::include_graphics("path/to/image.png")
```
Vorteile:
- Über die Antwort von agastudy : Keine Notwendigkeit für externe Bibliotheken oder für ein erneutes Rastering des Bildes.
- Über Shruti Kapoors Antwort : Keine Notwendigkeit, HTML manuell zu schreiben. Außerdem ist das Bild in der eigenständigen Version der Datei enthalten.
Einschließlich generierter Bilder
Um den Pfad zu einem Plot zu erstellen, der in einem Block generiert wird (aber nicht enthalten ist), können die Blockoptionen opts_current$get("fig.path")(Pfad zum Figurenverzeichnis) sowie opts_current$get("label")(Bezeichnung des aktuellen Blocks) hilfreich sein. Im folgenden Beispiel wird fig.pathdas zweite von zwei Bildern, die generiert (aber nicht angezeigt) wurden, in den ersten Block aufgenommen:
```{r generate_figures, fig.show = "hide"}
library(knitr)
plot(1:10, col = "green")
plot(1:10, col = "red")
```
```{r}
include_graphics(sprintf("%sgenerate_figures-2.png", opts_current$get("fig.path")))
```
Das allgemeine Muster der Figurenpfade lautet [fig.path]/[chunklabel]-[i].[ext]: Wo chunklabelist die Bezeichnung des Blocks, in dem der Plot generiert wurde ? Ist der Plotindex i(innerhalb dieses Blocks) und extdie Dateierweiterung (standardmäßig pngin RMarkdown-Dokumenten).