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

为双因子ggplot2箱线图设置标准差,解决误差线重叠问题

修正双因子箱线图的标准差误差线错位问题

你的问题出在stat_summary没有设置和箱线图一致的分组偏移规则,导致同一Usage分组下的两个Positive水平的误差线重叠在一起。

修正后的代码如下:

ggplot(data=df2, aes(x=Usage, y=`Panas result`, fill=Positive)) +
  geom_boxplot(position=position_dodge(width=0.5), width=0.5) +
  coord_cartesian(ylim = c(10, 45)) +
  scale_fill_manual(values=c("#33FFFF","seagreen2"),labels=c('נייטרלי', "חיובי")) +
  labs(fill = "מניפולציה",title="תוצאות שאלון הפנס כתלות בסיווג זמן המסך וסוג המניפולציה", x="זמן מסך", y = "תוצאות שאלון הפנס") +
  stat_summary(
    fun.min = function(x) mean(x) - sd(x),
    fun.max = function(x) mean(x) + sd(x),
    geom = "errorbar",
    color = "purple",
    width = .3,  # 可选:调小宽度避免和箱线图边框重叠
    position = position_dodge(width=0.5)  # 和箱线图的偏移宽度保持一致
  ) +
  theme_classic()        

关键修改点:

  • 给geom_boxplot的position_dodge明确指定width=0.5,确保偏移规则清晰
  • 给stat_summary添加position=position_dodge(width=0.5),让误差线和对应箱线图对齐
  • 移除不必要的orientation='Usage'参数,ggplot会根据aes分组自动处理方向
  • 可选调整误差线width为0.3,优化视觉效果避免重叠

修改后,每个Usage分组下的两个Positive水平的误差线会和对应箱线图一一匹配,不再出现错位重叠。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.21 03:10:04