【发布时间】:2015-10-13 14:28:10
【问题描述】:
在 R 中,我试图在 ggplot 中制作一个箱线图,其中翻转坐标(水平框)使用构面分组。当我在不翻转坐标的情况下构建它时,ggplot 将在具有 scales="free" 的构面中删除未使用的因子级别,但是当我还包含 coord_flip 时这似乎不起作用。
小例子:
library('ggplot2')
dat <- data.frame(RESP=rnorm(60), GROUP=rep(letters[1:6],each=10), FACET=c(rep(LETTERS[1:2],each=25),rep(LETTERS[3],10)))
正常的多面箱线图不会丢弃未使用的级别(但不是我想要的):
ggplot(dat, aes(x=GROUP, y=RESP)) +
geom_boxplot() +
facet_grid(.~FACET)
具有下降水平的正常多面箱线图也可以正常工作(不是我想要的):
ggplot(dat, aes(x=GROUP, y=RESP)) +
geom_boxplot() +
facet_grid(.~FACET, scales="free", space="free")
带有翻转坐标的分面箱线图(我想要的)不会丢弃未使用的级别:
ggplot(dat, aes(x=GROUP, y=RESP)) +
geom_boxplot() +
facet_grid(FACET~., scales="free", space="free") +
coord_flip()
重新排列 ggplot 命令的顺序并不能解决此问题。我怀疑答案是在FACET的一些调整中~。公式,但无法解决。
【问题讨论】: