以不确定长度为参数的R函数列表

以不确定长度为参数的R函数列表,r,list,function,ggplot2,R,List,Function,Ggplot2,我正在使用此功能的multiplot 此函数以不确定数量的绘图作为参数,并将它们一起绘图。使用下面的代码,我可以在两列中一起绘制示例4个图 library(ggplot2) n = 4 p = lapply(1:n, function(i) { ggplot(data.frame(x = 1:10,y = rep(i,10)), aes(x = x, y = y)) + geom_point() }) multiplot(p[[1]],p[[2]],p[[3]],p[[4]],

我正在使用此功能的
multiplot

此函数以不确定数量的绘图作为参数,并将它们一起绘图。使用下面的代码,我可以在两列中一起绘制示例4个图

library(ggplot2)
n = 4
p = lapply(1:n, function(i) {
    ggplot(data.frame(x = 1:10,y = rep(i,10)), aes(x = x, y = y)) +
    geom_point()
})

multiplot(p[[1]],p[[2]],p[[3]],p[[4]],cols = 2)
如果我的绘图数量不确定,该怎么办

我已经试过了

multiplot(p,cols = 2)
do.call(multiplot, list(p,cols = 2))
但是它没有给出我想要的结果

也许
multiplot(plotlist=p)

干杯

对于第二个选项,您也很接近:

do.call(multiplot, c(p, cols = 2))
这项工作是从什么时候开始的

length(list(p, cols = 2))
# [1] 2
length(c(p, cols = 2))
# [1] 5
也就是说,
list(p,cols=2)
由两部分组成:list
p
和整数2,而您需要的是通过添加
cols=2
来扩展
p
,我们需要这样做。(可能不是很明显,但是
?c
的标题确实说将值组合成向量或列表