【发布时间】:2017-05-16 03:00:55
【问题描述】:
ggsignif 包对于在ggplot 图表中快速轻松地指示重要比较非常有用。但是,comparisons 调用需要手动键入要比较的每对值。
例如
library(ggplot2)
library(ggsignif)
data(iris)
ggplot(iris, aes(x=Species, y=Sepal.Length)) +
geom_boxplot() +
geom_signif(comparisons = list(c("versicolor", "virginica"),c('versicolor','setosa')),
map_signif_level=TRUE)
我想知道如何通过同时引用所有可能的组合来规避这种情况?例如expand.grid(x = levels(iris$Species), y = levels(iris$Species)),给出所有组合
x y
1 setosa setosa
2 versicolor setosa
3 virginica setosa
4 setosa versicolor
5 versicolor versicolor
6 virginica versicolor
7 setosa virginica
8 versicolor virginica
9 virginica virginica
但是如何让geom_signif(comparisons=... 接受这个?
包裹信息在这里https://cran.r-project.org/web/packages/ggsignif/index.html
【问题讨论】:
-
combn(levels(iris$Species), 2)将为您提供所有三个配对组合 -
@AdamQuek 在没有
list()的情况下使用它会给出错误Warning message: Computation failed in stat_signif(): not enough 'y' observations。使用 withlist()只会将第一个比较添加到绘图中。 -
未回答您在
geom_signif上的查询(从未使用过,也不打算这样做)。只是建议combn是获得成对组合而不是expand.grid的更明智的方法。 -
@AdamQuek 哦。好的,谢谢。
标签: r graph ggplot2 statistics pairwise