我有大量的数字,我想在使用 knitr 创建的文档的单个列中显示它们。数字的数量可能会有所不同,因此我创建了一个函数来使用patchwork::wrap_plots
(cowplot::plot_grid
是一种替代方法,但具有下面描述的相同问题) 组合所有数字。MWE:
library(patchwork)
library(tidyverse)
plots <- lapply(1:10, function(x) data.frame(A = rnorm(1:100, 0, 1), B = rnorm(1:100, 0, 1)) %>%
ggplot(., aes(x = A, y = B)) +
geom_point() +
coord_equal())
wrap_plots(plots, ncol = 1)
默认情况下,这会创建小图。(省略coord_equal
会导致绘图具有相同的高度,但具有整个页面宽度):
使用 knitr 的 chunk 选项fig.height
(但不是fig.width
)可以放大图。但是,这会导致整个图的上方和下方有非常大的边距。
我找到了许多控制patchwork
或cowplot
绘图大小的解决方案(例如,使用cowplot::save_plot
)。但是,这些似乎都不适用于使用 knitr 创建的文档。
最好,我希望图形自动具有与 knitr 输出中的文本相同的宽度,而没有过多的边距。