如何在 ggplot2 (R) 中定义误差线的宽度?

How to define width in error bars in ggplot2 (R)?

我正在尝试绘制以下数据。我正在尝试更改错误栏的宽度,但我 运行 变成了 Width not defined. Set with position_dodge(width = ?) 的错误。我尝试执行 position_dodge.. 但它没有帮助。有什么建议吗?

library(ggplot2)

time <- c("t1","t1","t1","t1","t1","t1","t2","t2","t2","t2","t2","t2")
species <- c(1,1,1,2,2,2,1,1,1,2,2,2)
value <- c(1,2,3,11,12,13,4,5,6,11,12,13)

df <- data.frame(time, species,value)
df$time <- as.factor(df$time)
df$species <- as.factor(df$species)

ggplot(df,aes(x=time, y=value, color = species, group = species)) + # Change fill to color
  theme_bw() + 
  geom_point() + 
  stat_summary(fun.y=mean, position = "dodge") + 
  stat_summary(
    geom="errorbar", 
    fun.data= mean_cl_boot, 
    width = 0.1, size = 0.2, col = "grey57") + 
  # Lines by species using grouping
  stat_summary(aes(group = species), geom = "line", fun.y = mean) +
  ylab("Fitness")

Position dodge 用于在数据点重叠时显示所有数据点,我不确定这在您的示例中是否有用,如果您的数据不重叠,您可能会发现只需删除此参数即可解决问题.保持不变可以解决问题:

pd<-position_dodge(0.5)
  ggplot(df,aes(x=time, y=value, color = species, group = species)) + # Change fill to color
  theme_bw() + 
  geom_point(position = pd) + 
  stat_summary(fun.y=mean, position = pd) + 
  stat_summary(
    geom="errorbar", 
    fun.data= mean_cl_boot, 
    width = 0.1, size = 0.2, col = "grey57",
    position = pd) + 
  # Lines by species using grouping
  stat_summary(aes(group = species), geom = "line", fun.y = mean, position = pd) +
  ylab("Fitness")

刚刚编辑以防止所有内容分裂。