patchwork
patchwork適合用于圖數(shù)少塔沃,但需要精準(zhǔn)控制圖片排列的場景礁遵。拼圖語法如下:
-
+
:最簡單的拼圖脱惰,默認(rèn)橫向排列搏嗡,若有多個圖,會自動計(jì)算最佳的行和列;plot_spacer()代表空白
p1 + plot_spacer() +
p2 + plot_spacer() +
p3 + plot_spacer()
-
/
:上下拼圖采盒;|
:左右拼圖旧乞;用/
和|
配以()
可以實(shí)現(xiàn)更加復(fù)雜的拼圖
(p2 / p3 ) | p1
-
plot_layout()
:控制細(xì)節(jié)
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適合更多圖的組合,可以直接指定行數(shù)和列數(shù)磅氨,默認(rèn)按行排列
例如:
ggpubr::ggarrange(plotlist = list(p1,p2,p3,p1,p2,p3),nrow = 2,ncol = 3,common.legend = T)
aplot::insert_*
這個函數(shù)族包括aplot::insert_bottom()
尺栖、aplot::insert_left()
、aplot::insert_right()
烦租、aplot::insert_top()
延赌。我通常用于單張復(fù)雜圖的繪制。但缺點(diǎn)是返回的對象不是ggplot對象左权,進(jìn)行后續(xù)操作會比較麻煩皮胡。
p1 %>% insert_top(p2,height = 0.2) %>% insert_right(p3,0.2)