为grid.arrange调用名称向量

时间:2014-12-03 17:05:46

标签: r list gridextra r-grid

假设我有一个名为ALL的列表,其中包含40个元素,每个元素都是ggplot

如果我想绘制其中一个我可以做的

ALL[[1]] 

print(ALL)

如果我想将它们全部绘制在一起我可以做到

grid.arrange(ALL[[1]] ,ALL[[2]], ALL[[3]], ....  )

grid.arrange(ALL[[names(ALL)[1]]] ,ALL[[names(ALL)[2]]], ALL[[names(ALL)[3]]], ....  )

这对许多列表元素来说真的很累人。但我无法弄清楚如何调用grid.arrange来绘制所有情节。我不希望apply超过列表,因为我想在同一页面上显示多个图。

将40个地块调到grid.arrange可能看起来很多但是它们很小,甚至在页面上的1:10地块也是很多打字!!!!

1 个答案:

答案 0 :(得分:1)

每当您获得一个列表(此处为ALL),其元素是您要传递给函数的参数(此处为grid.arrange),您可以使用{ {3}}。

这应该可以解决问题:

## Equivalent to grid.arrange(ALL[[1]], ALL[[2]], ..., ALL[[n]])
do.call(grid.arrange, ALL)