ggplot2 geom_pointposition=“dodges”与误差条闪避不匹配

问题描述 投票:0回答:2

我试图找出绘制夏季水势变化的最佳方法,比较土壤覆盖处理和灌溉这两个因素。我得到了一个公平的结果,但我遇到了问题,geom_points 不遵循

position_dodge
作为错误栏。

示例:Best Try

Stats <- summarySE(Maiten, measurevar= "Potencial", groupvars=c("Fecha","Riego","Tratamiento"),na.rm=TRUE)
ggplot(Stats, aes(x=Fecha, y=Potencial, group=Riego, colour=Riego,shape=Tratamiento))+
geom_errorbar(aes(x=Fecha, ymax=Potencial+se, ymin=Potencial-se),position="dodge")+
geom_point(position="dodge",size=3)+theme_classic()

虽然这段代码给了我这个警告“警告消息: 宽度未定义。使用

position_dodge(width = ?)
设置“如果我改变宽度,则误差线或点都不会闪避。

示例:modifiying position_dodge(width =0.9)

任何帮助或指导,我们将不胜感激!

r ggplot2 geom-point
2个回答
0
投票

如果没有数据样本,很难知道会发生什么,但为了演示,

position = position_dodge(width = 0.9)
在每个 geom 调用中都应该将躲避的部分放在相同的位置:

library(ggplot2)

ggplot(ChickWeight, aes(Time, weight, colour = Diet)) +
  stat_summary(geom = "errorbar", position = position_dodge(width = 0.9)) +
  stat_summary(geom = "point", position = position_dodge(width = 0.9)) 
#> No summary function supplied, defaulting to `mean_se()`
#> No summary function supplied, defaulting to `mean_se()`

(也在这里演示

stat_summary
将在函数调用中完成大部分均值/se 绘图,并进行相应分组)

reprex 包于 2022 年 5 月 12 日创建(v2.0.1)


0
投票

正常的position_dodge需要使用相同的分组变量,这在与其他几何图形(例如linerange)组合时可能会出现问题。 position_dodge2 geom 消除了后一个要求,为您提供一致的抖动效果。

© www.soinside.com 2019 - 2024. All rights reserved.