先水平而不是垂直排列地块:r中的marrangeGrob

时间:2019-04-09 21:20:47

标签: r r-markdown

我有一个绘图列表(ggplot2对象),我将它们排列在一个R Markdown文档中的多个页面上,这些文档最终被编织为PDF文档。我正在使用gridExtra的marrangeGrob()函数来执行此操作。实际上,可以使用gridExtra小插图页面(下面的链接)上提供的示例来说明我的问题。您可以看到,这些图首先是垂直排列的,而不是水平排列的。我想做相反的事情(即在示例的顶部绘制1 + 2,在底部绘制3 + 4,而不是在顶部绘制1 + 3,在底部绘制2 + 4)。

有什么想法吗? https://cran.r-project.org/web/packages/gridExtra/vignettes/arrangeGrob.html

直接从此页面获取的示例代码(作者全称!)。

我尝试设置as.table = TRUE,并尝试将矩阵布局设置为marrangeGrob()调用中的选项,但未成功。我也尝试过调用列表的各个部分并通过布局进行手动设置,但是布局并不像在marrangeGrob()函数中进行的所有操作那样整洁(或者就代码而言简单)。除非这是唯一的选择,否则我也不希望更改列表中对象的顺序。

R Studio版本1.1.463; R版本3.5.3

谢谢!

library(gridExtra)
library(grid)
library(ggplot2)
library(lattice)

set.seed(123)
pl <- lapply(1:11, function(.x) 
             qplot(1:10, rnorm(10), main=paste("plot", .x)))
ml <- marrangeGrob(pl, ncol=2, nrow=2, as.table = FALSE)
ml

0 个答案:

没有答案