我正在尝试使用 ggplot 和 geom_errorbar 创建一个多面图。但是,每个不同的方面可能有很大不同的 x 范围,因此误差条的宽度看起来并不“好”。这是一个MWE:
library(ggplot2)
test <- data.frame( group=rep(c(1,2,3),each=10), ymin=rnorm(30), ymax=rnorm(30))
test$x <- rnorm(30) * (1+(test$group==1)*20)
ggplot( test, aes(x=x, ymin=ymin, ymax=ymax) ) +
geom_errorbar(width=5) + facet_wrap( ~ group, scale="free_x" )
ggplot( test, aes(x=x, ymin=ymin, ymax=ymax) ) +
geom_errorbar(width=.2) + facet_wrap( ~ group, scale="free_x" )
在第一个图中,第 1 组的误差线看起来不错,但第 2 组和第 3 组的误差线太宽了。在第二个图中,误差条对于第 1 组来说太小了。有没有简单的方法来解决这个问题?我想我可能只需要使用 width=0,但我想避免这种情况。