如何在ggline,R中添加一条连接平均值的线?

问题描述

大家好,我正在用 ggline(下面的代码)制作这个图,我想知道是否有办法放置一条连接平均值的线。

ggline(My_table2,x = "Status",y = "Ratio",color = "Status",order = c("Non_Treated","disease1","disease2"),ggtheme=theme_gray(),ylab = "Ratio",xlab = "Status",add="mean_se",palette = c("#00AFBB","#E7B800","#FC4E07"),font.label = list(size = 30,face = "bold")) +
  theme(text = element_text(size = 10))+theme_bw(base_size = 30)

enter image description here

解决方法

如果您可以使用稍低级别的软件包 - 在这种情况下,ggplot2 我认为要容易得多。我觉得代码也少。我正在修改 iris 数据集,因为它似乎与您的数据相似。我正在为整个数据创建一个组并将其用于该行。并且非常不优雅地使用 stat_summary 两次。

library(ggplot2)

iris2 <- iris
iris2$all <- 1

ggplot(iris2,aes(Species,Sepal.Length )) +
  stat_summary(aes(color = Species)) +
  stat_summary(geom = "line",aes(group = all))
#> No summary function supplied,defaulting to `mean_se()`
#> No summary function supplied,defaulting to `mean_se()`

reprex package (v2.0.0) 于 2021 年 4 月 22 日创建