如何用ggplot将不同数据集的箱线图与散点图在同图中对齐
解决ggplot箱线图与散点对齐问题
问题根源在于:当x轴为离散变量且通过color分组时,geom_boxplot默认使用position_dodge()来错开同x值下不同分组的箱线,但geom_point默认采用无偏移的定位方式,导致点与对应箱线错位。
修复方案
给geom_point添加与箱线图一致的偏移参数,确保两者的分组偏移宽度匹配:
ggplot() + geom_boxplot(data = df_bound_base, aes(x=m, y=FDP_bar, color=bound), width = 0.7) + geom_point(data = interp_median, aes(x=m, y=FDP_bar, color=bound, fill=bound), shape=23, size=2, position = position_dodge(width = 0.7))
额外检查点
如果调整后仍不对齐,需确认:
- 两个数据集的
m和bound变量的分组完全对应,无拼写错误或因子水平不一致的情况 interp_median中每个(m, bound)组合都能在df_bound_base中找到匹配项
内容的提问来源于stack exchange,提问作者iqm
相关产品推荐
相关产品推荐

