使用do.call和gridExtra对GGPlot列表重新排序

使用do.call和gridExtra对GGPlot列表重新排序,r,ggplot2,gridextra,R,Ggplot2,Gridextra,我已经创建了一个ggplots列表,其中包含ggplot1、ggplot2和ggplot3。我想使用grid.arrange对它们进行排列,如下所示: 但是,我希望重新排序,以便它们以序列ggplot3、GGPLOT1和ggplot2的形式出现。如何使用do.call函数实现这一点?您应该能够使用[cyour order]对存储在gglist中的图形进行重新排序 在这种情况下: do.call(grid.arrange, gglist[c(3,1,2)]) 如果要指定图形的顺序,甚至不必使用d

我已经创建了一个ggplots列表,其中包含ggplot1、ggplot2和ggplot3。我想使用grid.arrange对它们进行排列,如下所示:


但是,我希望重新排序,以便它们以序列ggplot3、GGPLOT1和ggplot2的形式出现。如何使用do.call函数实现这一点?

您应该能够使用[cyour order]对存储在gglist中的图形进行重新排序

在这种情况下:

do.call(grid.arrange, gglist[c(3,1,2)])
如果要指定图形的顺序,甚至不必使用do.call,只需使用grid.arrange函数,通常如下所示:

grid.arrange(ggplot3, ggplot1, ggplot2)

您应该能够使用[cyour order]对存储在gglist中的图形进行重新排序

在这种情况下:

do.call(grid.arrange, gglist[c(3,1,2)])
如果要指定图形的顺序,甚至不必使用do.call,只需使用grid.arrange函数,通常如下所示:

grid.arrange(ggplot3, ggplot1, ggplot2)

我想使用do.call for,当我有一个包含10个grob的列表并且不必全部输入时。感谢您提供的非常简单的解决方案:不需要do.call,请参阅我想要使用do.call的grobs Arguments,当我有一个包含10个grobs的列表并且不必全部键入时。感谢您提供的非常简单的解决方案:不需要do.call,请参阅grobs参数