存储do.call(“ grid.arrange”)输出而不进行打印

时间:2018-10-02 06:27:15

标签: r ggplot2 gridextra

我想创建一个变量p,其中包含具有四个ggplot2子图的图。我可以使用以下代码实现这一点:

library(ggplot2)
library(gridExtra)
data = diamonds[1:50,]
x = data$x
myPlots = lapply(c(1,5,6,7), function(i){
  y = as.data.frame(data[,i])
  y = y[,1]
  df = data.frame(x=x,y=y)
  p <- qplot(x, y, data=df)
  p
})

p = do.call("grid.arrange", c(myPlots, ncol=2))

我喜欢我以后可以通过调用变量p来使用

library(grid)
grid.draw(p)

但是,当我最初使用do.call("grid.arrange")语法创建p时,它并不自动绘制(至少在RStudio中)。

我的问题是:是否可以创建p以便存储以供以后使用,而无需在创建时对其进行绘制?

0 个答案:

没有答案