【问题标题】:Removing unused levels in ggplot boxplot with facets AND flipped coordinates?使用构面和翻转坐标删除ggplot boxplot中未使用的级别?
【发布时间】: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的一些调整中~。公式,但无法解决。

【问题讨论】:

    标签: r ggplot2 boxplot facet


    【解决方案1】:

    【讨论】:

    • 当然,使用 grid.arrange() 似乎是一个有用的修复。它只是需要制作一堆情节,这很烦人,但不是世界末日。感谢您的链接。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-10-22
    • 1970-01-01
    • 2022-01-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多