R语言 以编程方式构建拼接图

e37o9pze  于 2024-01-03  发布在  其他
关注(0)|答案(1)|浏览(203)

所有拼凑的文档都描述了如何使用p1+p2+p3+p4(或p1)构建图|P2|......)的情况。
我想从一个ggplot对象列表中构建一个拼凑图,其中我事先不知道图的数量。
我可以制作一个情节列表,并制作最后一页:
final.plot <- p_list[[1]] | p_list[[2]] | p_list[[3]]
但我还没想好怎么用

  1. final.plot <- NULL
  2. for (i in 1:length(p_list)){
  3. final.plot <- final.plot | p_list[[i]]
  4. }

字符串
有办法做到这一点吗?

yk9xbfzb

yk9xbfzb1#

要通过编程方式从list图中创建patchworkpatchwork包提供了patchwork::wrap_plots()

  1. library(ggplot2)
  2. library(patchwork)
  3. p_list <- replicate(4, ggplot(mtcars, aes(hp, mpg)) +
  4. geom_point(), simplify = FALSE)
  5. p_list |>
  6. wrap_plots(ncol = 2, nrow = 2)

字符串


的数据
或者使用Reduce代替for循环,但我看不出有任何理由这样做,因为我们有wrap_plots()

  1. p_list |>
  2. Reduce(`|`, x = _) +
  3. plot_layout(ncol = 2, nrow = 2)


展开查看全部

相关问题