如何使用knitr从块中插入普通图片(jpeg / png)

27

我想在文本开头使用代码块而不是markdown来插入图片。 我正在使用Tufte handout模板 output: rmarkdown :: tufte_handout ,当我将其直接插入YAML标题之后但在TOC之前时,如下所示:

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

图片随后覆盖整个正文区域。我知道使用块可以选择让块覆盖整个页面,只需在块标题中放置fig.fullwidth = TRUE选项,但由于我不从数据生成任何图形,也不知道如何仅从块内部放置图片,所以我有点陷入困境。

另一个问题是,当我在YAML头中设置toc:true时,图片仅出现在插入的目录之后 - 这就是为什么我要使用latex命令插入目录的原因。

感谢您的建议。

1个回答

70

当图形不是由R代码生成时,您可以使用knitr :: include_graphics()将其插入到文档中,例如:

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

2
谢谢,这个工作得很好。在tufte-handout模板中,只有在标题中添加选项fig.fullwidth=TRUE时,它才能占满整个页面的宽度。但是out.width='100%'选项也非常有用。我也找到了另一种解决方案,但需要插入像这样的latex代码:\begin{figure*} \includegraphics{././cropped-banner_efpt.jpg} \end{figure*}无论如何,非常感谢,knitr真是太棒了! - r0berts
在 R 版本 3.6.3 (2020-02-29) for x86_64-pc-linux-gnu (64-bit) 上运行非常良好。谢谢! - Pablo Adames
虽然比 ![...](...) 冗长得多,但这种方法在放置和大小方面提供了更多的控制,因此即使对于静态图像也可能非常有用。 - dsz

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接