美文网首页统计分析
R语言技巧每日分享day9-ggplot对象的拼图函数

R语言技巧每日分享day9-ggplot对象的拼图函数

作者: 江湾青年 | 来源:发表于2023-02-28 11:53 被阅读0次

patchwork

patchwork适合用于图数少,但需要精准控制图片排列的场景。拼图语法如下:

  • +:最简单的拼图,默认横向排列,若有多个图,会自动计算最佳的行和列;plot_spacer()代表空白
p1 + plot_spacer() +
    p2 + plot_spacer() +
    p3 + plot_spacer()

  • /:上下拼图; |:左右拼图;用/|配以()可以实现更加复杂的拼图
(p2 / p3 ) | p1

  • plot_layout():控制细节
p1 + p2 + p3 + p4 +
  plot_layout(widths = c(3, 1))

  • 自定义拼图
layout <- "
##BBBB
AACCDD
##CCDD
"
p1 + p2 + p3 + p4 +
  plot_layout(design = layout)

ggpubr::ggarrange()

ggpubr::ggarrange适合更多图的组合,可以直接指定行数和列数,默认按行排列

例如:

ggpubr::ggarrange(plotlist = list(p1,p2,p3,p1,p2,p3),nrow = 2,ncol = 3,common.legend = T)

aplot::insert_*

这个函数族包括aplot::insert_bottom()aplot::insert_left()aplot::insert_right()aplot::insert_top()。我通常用于单张复杂图的绘制。但缺点是返回的对象不是ggplot对象,进行后续操作会比较麻烦。

p1 %>% insert_top(p2,height = 0.2) %>% insert_right(p3,0.2)

参考

https://mp.weixin.qq.com/s/Y_uK2H7ketmFpJMvkNUNtg

相关文章

网友评论

    本文标题:R语言技巧每日分享day9-ggplot对象的拼图函数

    本文链接:https://www.haomeiwen.com/subject/mcaqldtx.html