R:如何在折线图上添加子组之间的显著性差异

R: how to add significance differences between sub groups on a line plot

提问人:Maya Eldar 提问时间:6/12/2022 最后编辑:Maya Eldar 更新时间:6/13/2022 访问量:146

问:

我有一个 3 个不同组的折线图,除了显着差异外,我还想在图表上显示子组之间差异的显着性。例如,将 3 个人群中每个人群在 1 岁时体重差异的显著性相加。我看到了这个函数,但未能在图表中的线条之间垂直使用它。 我目前的代码:stat_compare_means()

library(tidyverse)
#pivot data into long format

df <- data.frame(
  stringsAsFactors = FALSE,
                ID = c(1L, 2L, 3L, 4L, 5L),
        POPULATION = c("A", "A", "B", "B", "C"),
   weight.at.age.1 = c(13.37, 5.19, 7.68, 6.96, 10.35),
   weight.at.age.2 = c(14.15, 15.34, 6.92, 15.12, 8.86),
   weight.at.age.3 = c(17.36, NA, 19.42, 36.39, 26.33)
) %>% 
  pivot_longer(cols = weight.at.age.1:weight.at.age.3, 
               names_to = 'age', 
               values_to = 'weight') %>% 
  mutate(age = str_remove(age, 'weight.at.age.'))

#plot data
ggline(data = df, 
       mapping = aes(x = age, 
                     y = weight, add = "mean_se", color=POPULATION))+
  stat_compare_means(aes(group = POPULATION), method = "anova", label = "p.signif", 
                     label.y = c(56))

啧!

r ggplot2 线图 意义

评论

0赞 bpvalderrama 6/13/2022
stat_compare_means() 函数文档说:“将平均比较 p 值添加到 ggplot 中,例如方框印迹、点图和条形图”。这一定是它没有成功的原因。通过查看您的数据,您想要做的更像是 2 因素方差分析,而不仅仅是方差分析。在这种情况下,我会进行测试,然后尝试手动输入显着性标记,并带有geom_text或类似的东西。
0赞 Maya Eldar 6/14/2022
我以这个 ggplots 选项列表为例......但是,我看到了那个错误:.所以我正在寻找一个类似于该函数的函数,可以应用于 y 轴上的组。.Error in f(...) : Can only handle data with groups that are plotted on the x-axisstat_compare_means

答: 暂无答案