在将rmarkdown文件编织成具有大面积图的PDF时出现问题。生成PDF文件时,地块会被剪掉。
问题是我找不到自动调整所有图的高度和宽度的方法。当我写一个非常大的报告时,我有几个这样的图,因此毫无疑问地(通过fig.width和fig.height)调整它们。
在YAML或preamble.tex文件中应该使用任何程序包/命令吗?
最小的可复制示例:
---
output: pdf_document
---
## Large Plot
```{r}
library(meta)
data(Fleiss93)
##
m <- metabin(event.e, n.e, event.c, n.c,
data = Fleiss93, studlab = study,
sm = "RR", method = "I")
forest(m)
```
答案 0 :(得分:1)
要更改默认设置,请将以下代码块放在文档的开头:
```{r include = FALSE}
knitr::opts_chunk$set(fig.height = 9, fig.width = 7)
```
您也可以使用类似的东西
```{r include = FALSE}
knitr::opts_chunk$set(out.height = "\\textheight", out.width = "\\textwidth")
```
重新缩放图像以尝试完全填满页面。默认情况下,knitr
会阻止您更改宽高比,但是如果您确实要填充页面,失真和所有内容,请使用
```{r include = FALSE}
knitr::opts_chunk$set(out.height = "\\textheight", out.width = "\\textwidth",
out.extra = "keepaspectratio=false")
```
我建议您反对最终选择;您的地块看起来真的很难看。
更笼统地说:knitr
的默认值非常好。当您想使用原始默认值时,需要明确指定使用knitr::opts_chunk$set()
进行更改的每个内容。因此,对于像这样的怪异选项,仅将选项剪切并粘贴到需要它们的每个块中,而不必使用默认值,就不是不可能的事情了。