是的,我知道它已经存在,我也发现Hadley在谷歌团体的答案中表示ggplot2
箱形图还没有缺口。所以我的问题是双重的:这已经改变了(已经有一个本地的凹口实现),如果没有,那么可以做些什么。
我的意思是我不需要缺口光学元件,代表一些阴影区域的置信区间,它适合放置在盒子图上的另一层中,看起来也不错。
还添加了屏幕截图,因为我听说图形问题在没有图形的情况下永远不会完整
答案 0 :(得分:16)
<强>更新强>
除了下面详述的选项外, ggplot2 的0.9.0版还在geom_boxplot
中包含此功能。检查?geom_boxplot
会显示notch
和notchwidth
参数:
+ geom_boxplot(notch = TRUE, notchwidth = 0.5)
不是优雅的图形,但这是一个例子:
# confidence interval calculated by `boxplot.stats`
f <- function(x) {
ans <- boxplot.stats(x)
data.frame(ymin = ans$conf[1], ymax = ans$conf[2])
}
# overlay plot (upper panel below)
p <- ggplot(iris, aes(Species, Sepal.Length)) + geom_boxplot() +
stat_summary(fun.data = f, geom = "linerange", colour = "skyblue", size = 5)
p
# base graphics (lower panel below)
boxplot(Sepal.Length ~ Species, data = iris, notch = TRUE)
你可以通过调整stat_summary
的参数来改变CI栏的表现。
crossbar版本:
f <- function(x) {
ans <- boxplot.stats(x)
data.frame(ymin = ans$conf[1], ymax = ans$conf[2], y = ans$stats[3])
}
p <- ggplot(iris, aes(Species, Sepal.Length)) +
geom_boxplot(width = 0.8) +
stat_summary(fun.data = f, geom = "crossbar",
colour = NA, fill = "skyblue", width = 0.8, alpha = 0.5)
p
答案 1 :(得分:3)
可能有趣的是,在ggplot2-dev mailing list上发布了一篇关于notched box plots的帖子。
您可以在github找到开发页面。该软件包可以通过以下方式安装:
# install.packages("devtools")
library(devtools)
install_github("ggplot2")