【发布时间】:2016-01-12 13:04:04
【问题描述】:
我想要一个分组箱线图。问题是 y 变量 在第一个 n 个因子水平和第二个 m 个因子水平之间有很大的差异。 三种解决方案似乎是可能的:
- 创建两个单独的图表并将它们与共享图例组合。
- 在一张图中创建两个不同的 y 轴
- 使用分面网格。
由于 1. 和 2. 看起来很麻烦,我想我会试一试 3.。 问题是,在每个子图中,所有因子水平都出现了。 下面的例子说明了这个问题。
library(ggplot2)
mtcars$carb.bin <- mtcars$carb > 2
mtcars$hp[mtcars$carb > 2] <- 10*mtcars$hp[mtcars$carb > 2]
ggplot(mtcars, aes(carb, hp)) + geom_boxplot(aes(fill = factor(carb))) +
facet_wrap(carb.bin~ ., scales = "free")
【问题讨论】:
-
尝试 facet_wrap(~carb.bin, scales = "free") 对我有用。