2016-04-01 7 views
5

Ich möchte ein Bild am Anfang des Textes mit einem Code-Block, nicht Markdown einfügen. Ich bin mit dem Tufte Handout Vorlage output: rmarkdown::tufte_handout und wenn ich es gerade nach dem YAML-Header einfügen, aber vor TOC wie folgt aus:So fügen Sie ein einfaches Bild (Jpeg/Png) aus Chunk mit Knitr

\centering 
![width='100%'](./cropped-banner_efpt.jpg) 
\raggedright 
\tableofcontents 
\clearpage 

das Bild erstreckt sich über dann den Hauptkörper. Ich weiß, dass es mit Chunks eine Option gibt, um den Chunk über die ganze Seite zu verteilen, indem man fig.fullwidth = TRUE in den Chunk-Header platziert, aber ich bin ein bisschen dabei, da ich keine Graphen aus Daten erzeuge und ich nicht weiß, wie man simpy Platziere ein Bild innerhalb eines Stücks.

Eine andere Sache war, dass, wenn ich toc: True in der YAML-Header, das Bild würde nur kommen nach der eingefügten Toc - das ist, warum ich Toc mit dem Latex-Befehl einfügen.

Vielen Dank für Ihre Vorschläge.

Antwort

23

Wenn eine Figur nicht aus R-Code generiert wird, können Sie sie mit knitr::include_graphics() in das Dokument einfügen, z.

```{r echo=FALSE, out.width='100%'} 
knitr::include_graphics('./cropped-banner_efpt.jpg') 
``` 
+1

Vielen Dank, das funktioniert sehr gut. In 'tufte-handout' template geht es nur dann auf die volle Breite der Seite, wenn Sie in der Kopfzeile die Option' fig.fullwidth = TRUE' angeben. Aber 'out.width =' 100% 'Option ist auch sehr nützlich zu wissen. Ich fand auch eine andere Lösung, aber das ist mit dem Einfügen von 'Latex' Code wie:' \ begin {figure *} \ includegraphics {././ cropped-banner_efpt.jpg} \ end {Abbildung *} 'Auf jeden Fall danke Ein Haufen und Knitr ist phänomenal! – r0berts