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

如何在ggpubr绘图时限制y轴显示范围且不裁剪显著性标注

ggpubr箱线图限制y轴显示范围且不裁剪标注的实现方法

要实现仅隐藏y轴超出0-32区间的轴段、同时保留所有显著性标注的需求,核心是不要使用会裁剪图层的ylim()或scale_y_continuous(limits = )参数,改用coord_cartesian()函数设置可视区域:

  • coord_cartesian(ylim = )仅控制绘图的显示窗口,不会裁剪任何已绘制的图层元素,超出轴范围的标注内容会正常展示
  • 常规的轴范围设置方式会直接丢弃超出范围的所有图层内容,导致位置在y=50的全局p值标注被裁剪

完整修改代码

library(ggpubr)
data("ToothGrowth")
head(ToothGrowth)

# Visualize: Specify the comparisons you want
my_comparisons <- list( c("0.5", "1"), c("1", "2"), c("0.5", "2") )
ggboxplot(ToothGrowth, x = "dose", y = "len",
      color = "dose", palette = "jco")+ 
  stat_compare_means(comparisons = my_comparisons)+ # 添加组间两两比较p值
  stat_compare_means(label.y = 50) +    # 添加全局p值
  coord_cartesian(ylim = c(0, 32)) # 仅限制y轴显示范围,不裁剪图层

运行上述代码后,y轴只会展示0到32的区间,32以上的冗余轴区域会被隐藏,同时所有组间显著性标注、全局p值标注都会完整保留。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.02 22:36:01