【发布时间】:2020-02-12 23:58:38
【问题描述】:
我正在尝试创建一个箱线图,该箱线图仅显示重要的 p 值,在箱线图中每个条的组内。例如这里它将比较 I1 和 SI2 的“一般”、“好”、“非常好”等
我已经尝试使用下面的代码来实现上面的情节
library(ggplot2)
library(dplyr)
data("diamonds")
labeldat <- diamonds %>%
group_by(cut, clarity) %>%
dplyr::summarise(labels = paste(n(), n_distinct(color), sep = "\n"))
Comparisons = list(c("I1","SI2"),c("I1","SI1"),c("I1","VS2"),c("I1","VS1"),c("I1","VVS2"),c("I1","VVS1"),c("I1","IF"),
c("SI2","SI1"),c("SI2","VS2"),c("SI2","VS1"),c("SI2","VVS2"),c("SI2","VVS1"),c("SI2","IF"),
c("SI1","VS2"),c("SI1","VS1"),c("SI1","VVS2"),c("SI1","VVS1"),c("SI1","IF"),
c("VS2","VS1"),c("VS2","VVS2"),c("VS2","VVS1"),c("VS2","IF"),
c("VS1","VVS2"),c("VS1","VVS1"),c("VS1","IF"),
c("VVS2","VVS1"),c("VVS2","IF"),
c("VVS1","IF"))
ggplot(diamonds, aes(x=cut, y=price)) +
geom_boxplot(aes(fill=clarity), position = position_dodge2(width=0.75)) +
theme_bw() +
geom_text(data = labeldat, aes(x = cut, y = -250, label = labels), hjust = 0.5, position = position_dodge2(width = .75))+
stat_compare_means(aes(group=clarity), label = "p.signif", method="t.test", comparisons = Comparisons)
不幸的是,使用比较参数似乎是通过计算错误,我无法解决如何解决:
警告信息:
stat_signif() 中的计算失败:
需要 TRUE/FALSE 的缺失值
我尝试在不进行比较的情况下运行它,但它似乎只是给了我一个总分
【问题讨论】:
-
hmmm 那么还有其他功能可以实现吗?