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

R语言ggarrange绘图:坐标轴与图例文字大小配置问题

解决ggarrange多环形图的图例大小与轴文本问题

1. 先确保单个环形图的轴文本可见

环形图(如ggplot绘制的甜甜圈图)默认会隐藏X/Y轴元素,要在单个图的代码里显式开启并设置样式,避免后续合并时失效:

# 定义生成单个环形图的函数
make_donut_plot <- function(data_subset) {
  ggplot(data_subset, aes(x = 2, fill = carrier)) +
    geom_bar(width = 1, stat = "count") +
    coord_polar("y", start = 0) +
    xlim(0.5, 2.5) + # 控制环形的内外半径
    # 显式设置轴元素与图例样式
    theme(
      axis.text.x = element_text(size = 12, color = "black"), # X轴标签大小
      axis.text.y = element_text(size = 12, color = "black"), # Y轴标签大小
      axis.title.x = element_text(size = 14, face = "bold"), # X轴标题
      axis.title.y = element_text(size = 14, face = "bold"), # Y轴标题
      legend.text = element_text(size = 12) # 单图图例文字大小
    ) +
    labs(x = "航班类型", y = "数量") # 替换为你的轴标题内容
}

2. 合并时统一控制图例与全局样式

ggarrange的common.legend会提取并合并所有子图的图例,此时单独子图的图例设置可能被覆盖,需要在合并后统一调整全局主题:

# 循环生成对应origin值的子图列表
origin_values <- unique(your_data$origin)
plot_list <- lapply(origin_values, function(val) {
  subset_data <- your_data[your_data$origin == val, ]
  make_donut_plot(subset_data) +
    labs(title = paste("出发地:", val))
})

# 合并子图,启用共同图例
combined_plot <- ggarrange(
  plotlist = plot_list,
  common.legend = TRUE,
  legend = "bottom", # 可选:top/right/left
  ncol = 2, nrow = ceiling(length(plot_list)/2) # 自适应布局
)

# 给合并后的图统一设置图例大小
combined_plot <- combined_plot +
  theme(
    legend.text = element_text(size = 14), # 增大图例文字
    legend.title = element_text(size = 16, face = "bold") # 图例标题样式
  )

# 若需要全局统一的轴标题,用annotate_figure添加
annotate_figure(combined_plot,
                bottom = text_grob("全局X轴标题", size = 14, face = "bold"),
                left = text_grob("全局Y轴标题", size = 14, face = "bold", rot = 90)
)

3. 关键排查点

  • 不要在子图中设置legend.position = "none",否则ggarrange无法提取共同图例。
  • 环形图的coord_polar会改变轴的显示逻辑:X轴对应环形的分段标签,Y轴对应半径方向的刻度,若需要传统XY轴的视觉效果,可考虑调整可视化类型,或用annotate()手动添加文本到指定坐标。
  • 如果使用theme_pubr()统一风格,需在子图或合并后的图中叠加主题设置,避免默认样式覆盖自定义配置。

内容的提问来源于stack exchange,提问作者Gerald Vasquez Aleman

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.21 04:28:28