You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

R中ggarrange组合绘图如何为两列分别添加b₁、b₂列标签

R中ggarrange组合2列3行图形添加分栏列标签方法

问题原因

原代码仅向annotate_figure的bottom参数传入单个b₂文本对象,仅会在组合图整体底部居中显示单个标签,无法实现双列分别标注的需求。

实现代码

先将两个列标签按2列布局组装为和组合图列数匹配的grob对象,再传入bottom参数即可自动对齐到对应列下方:

# 若未安装gridExtra,先运行 install.packages("gridExtra")
library(ggpubr)
library(gridExtra)

# 按原逻辑排布2列3行共6张子图
figure <- ggarrange(p, r, g ,s, k ,t,
                    labels = c("A", "D", "B", "F", "C", "G"),
                    ncol = 2, nrow = 3)

# 构造分栏列标签,b₁对齐第一列、b₂对齐第二列
col_labels <- arrangeGrob(
  text_grob(expression("b"[1]), color = "black", face = "bold", size = 14),
  text_grob(expression("b"[2]), color = "black", face = "bold", size = 14),
  ncol = 2
)

# 添加列标签输出最终图
annotate_figure(figure, bottom = col_labels)

可调参数

  • 若标签和图区间距不合适,可在text_grob中添加y参数调整垂直偏移,例如text_grob(..., y = 0.7)可让标签向上偏移
  • 标签的字体、字号、颜色等样式直接在text_grob中修改即可,和单标签写法完全一致
  • 最终效果参考:
    双列标签示例效果

内容的提问来源于stack exchange,提问作者lola

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.28 19:36:45