在Rmarkdown knitr输出中指定ggplot图的高度和宽度

use*_*411 18 r ggplot2 knitr

我用ggplot2创建了一个图,其中x轴标签不可读,除非图大于默认值.在Rstudio中查看时,我可以动态调整大小.使用ggsave()保存时,我可以指定高度和宽度.我如何在Rmarkdown文件中执行此操作,以便输出包含所需大小的图?

use*_*411 45

您可以在代码块中指定高度和宽度

```{r, fig.width=10,fig.height=11}
df %>% ggplot(aes(x = x, y = y)) + geom_point()
```
Run Code Online (Sandbox Code Playgroud)

  • 代码块是 R markdown/R Notebook 格式的一部分。这定义了您可以编写和执行代码的空间。它被定义为 \```{r} 你的代码 \``` 。更多信息可参见:https://rmarkdown.rstudio.com/lesson-3.html (2认同)
  • @jzadra,我不确定如何做到这一点,或者是否可能,但为每个 ggplot 创建一个单独的块是微不足道的。只需在第一个绘图后关闭一个块(使用三个反引号),然后使用新的绘图规范打开另一个块(三个反引号后跟上面花括号中的描述)。 (2认同)

Pat*_*ick 13

如果您想对所有绘图执行此操作,则可以r setup在文件开头使用 Rmd 块。

knitr::opts_chunk$set(echo = TRUE, fig.width = 10, fig.height = 5)
Run Code Online (Sandbox Code Playgroud)


Dan*_*iel 10

作为旁白,请注意,您还可以使用公制单位ggplot2::unit()

library(ggplot2)
knitr::opts_chunk$set(fig.width=unit(18,"cm"), fig.height=unit(11,"cm"))
Run Code Online (Sandbox Code Playgroud)