7

我使用 ggplot2 创建了两个透明的重叠直方图。

test = data.frame(condition = rep(c("a", "b"), each = 500), value = rep(-1, 1000))
test[1:500,]$value = rnorm(500)
test[501:1000,]$value = rnorm(500) + 2

fig = ggplot(test, aes(x = value, fill = condition)) +
      #scale_fill_grey() +
      geom_histogram(position = "identity", alpha = .5)
fig

生成的情节看起来很棒,但它是彩色的。我需要一个灰度图或黑白图。

使用“scale_fill_grey()”会导致绘图的透明度非常难以“阅读”。

理想情况下,我想要一个使用纹理而不是颜色的黑白图,例如,交叉影线:“///”表示一种情况,“\\\”表示另一种情况,当条形图显示为“XXX”重叠。这可能吗?

4

1 回答 1

12

这个怎么样(仍然没有纹理)?

fig = ggplot(test, aes(x = value, fill = condition)) +
    geom_histogram(position = "identity", alpha = .8) + 
    scale_fill_manual(values=c("grey20", "grey60")) + theme_bw()
fig

在此处输入图像描述

于 2013-05-08T21:20:21.520 回答