0

理想情况下,我可以找到一种使用面积图的方法,但示例将使用矩形。问题是 alpha 似乎没有在做它的工作。对此可能有完全不同的方法。这个例子也不完美,因为数据是随机的,但本质上我得到了一个巨大的 blob,因为我不能降低alpha.

我从 Hadley 的ggplot2 文档中找到的一个例子:

df <- data.frame(x = sample(10, 100, replace = TRUE),y = sample(10, 100, replace = TRUE))
ggplot(df, aes(xmin = x, xmax = x + 1, ymin = y, ymax = y + 2)) + 
geom_rect(alpha=.01,fill="black") + theme_bw()

在这里,我们看到 alpha 是足够且有意义的,它被采样了 100 次并且 alpha 是 0.01。如果所有 100 个都出现在同一个地方,它应该是黑色的

工作阿尔法

现在让我们将它增加到 10000 个样本,这就是我所拥有的(我真正需要做的就是面积图选项中的 Morso)。

df <- data.frame(x = sample(10, 10000, replace = TRUE),y = sample(10, 10000, replace = TRUE))
ggplot(df, aes(xmin = x, xmax = x + 1, ymin = y, ymax = y + 2)) + 
geom_rect(alpha=.002,fill="black") + theme_bw()

0.002 是我在没有显示任何内容之前可以获得的最低值。我会继续分享这个情节:

0.002 的最小允许 alpha

以下:

geom_rect(alpha=.001,fill="black") + theme_bw()

显示: 较低的 alpha 显示什么

我知道如何为散点图执行此操作,但是您如何“覆盖”许多矩形或区域图R呢?我想这可能涉及在将 Z 值发送到之前计算 Z 值ggplot,或者对区域图数据进行一些严格的切片和切块,但我想知道是否有一个已经准备好并且可以工作的解决方案。

感谢您的阅读以及您可以提供的任何帮助。

4

1 回答 1

1

这不是您问题的 100% 答案。只是想提一下,alpha 最多可以取 2 8个不同的值。在ggplot2此按比例缩小到范围 [0,1]。因此,每一个小于 0.51/256 = 0.00199 的缩放 alpha 值都会为您提供 100% 的透明度。

关于你的问题,我只是想确认在我的情况下,情节看起来很好alpha = 0.002。相关sessionInfo()

R version 2.15.2 (2012-10-26)
Platform: x86_64-apple-darwin9.8.0/x86_64 (64-bit)

...

other attached packages:
[1] ggplot2_0.9.3
于 2013-06-10T07:19:57.563 回答