繁体   English   中英

从列表 R 中提取图

[英]extract plots from list R

我做了一个function:

mtcars_plot_fun <- function(cyl_in, gear_in) {
  car_data <- mtcars %>%
    filter(cyl == cyl_in,
           gear == gear_in)
  p <- car_data %>% ggplot(aes(x = disp, y = qsec, fill = gear)) +
    geom_point() 
  print(p)
}

然后是一个循环,绘制并将它们存储在列表 object gg_obj

cyls <- c(4, 6)

gears <- c(3, 4)

for (cyl in cyls) {
  for (gear in gears) {
    gg_obj <- mtcars_plot_fun(cyl_in = cyl, gear_in = gear)
    }
}

现在我想从gg_obj中提取我需要的图并使用grid.arrange()gridExtra或类似于 plot 它们。 如何拉出我想要的图,并将它们作为唯一对象存储到网格中的 plot 中?

您可以使用do.call将您的绘图列表用作 grid.arrange 的grid.arrange

例如:

do.call(grid.arrange, list.of.plots, ncol=2)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM