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

ggpubr::ggboxplot的add.params中shape参数不生效如何解决

ggpubr ggboxplot add.params shape参数不生效解决方法

问题原因

ggboxplot中add = "dotplot"参数内部默认调用geom_dotplot()图层,该图层的内置点样式优先级高于传入add.params的自定义shape值,导致设置被覆盖无法生效。

解决方法

方法1:改用jitter点图层(无需堆叠点效果)

如果不需要dotplot的垂直点堆叠效果,仅需展示所有原始数据点,将add参数改为jitter即可让shape设置正常生效:

data("ToothGrowth")
df <- ToothGrowth

library(ggpubr)
ggboxplot(df, x = "dose", y = "len", width = 0.8, 
          add = "jitter", add.params = list(color = "blue", shape = 1))

方法2:手动叠加dotplot图层(保留堆叠点效果)

如果需要保留dotplot的点堆叠样式,不使用内置add参数,手动追加geom_dotplot图层自定义所有样式参数:

data("ToothGrowth")
df <- ToothGrowth

library(ggpubr)
ggboxplot(df, x = "dose", y = "len", width = 0.8) +
  geom_dotplot(binaxis = "y", stackdir = "center", 
               color = "blue", shape = 1, dotsize = 0.8)

注意:如果使用21-25号带填充属性的形状,需要同时设置color(边框颜色)和fill(填充颜色)才能显示正确样式。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 03:15:01