【发布时间】:2015-05-16 02:21:48
【问题描述】:
我想在 stat_density2 图中绘制多个组,其中 alpha 值与每个组中的观察计数相关。然而,由 stat_density2d 形成的水平似乎被归一化为每组中的观察数。例如,
temp <- rbind(movies[1:2,],movies[movies$mpaa == "R" | movies$mpaa == "PG-13",])
ggplot(temp, aes(x=rating,y=length)) +
stat_density2d(geom="tile", aes(fill = mpaa, alpha=..density..), contour=FALSE) +
theme_minimal()
创建一个这样的图:
因为我只包括了 2 个没有评级的点,所以它们导致密度看起来比其他两个更紧/更强,因此会洗掉其他两个密度。我试过查看Overlay two ggplot2 stat_density2d plots with alpha channels 和Specifying the scale for the density in ggplot2's stat_density2d,但它们并没有真正解决这个具体问题。
最终,我试图用我的真实数据完成的是,我有来自离散二维位置的“功率”样本,用于多种条件,并且我试图绘制它们的相对功率/空间分布是什么。我在相对于其功率的位置复制点,但这导致了低功率条件,在使用 stat_density2d 时只有几个位置看起来最强。如果有更好的方法,请告诉我!
谢谢!
【问题讨论】:
-
灰色背景上的绿色和蓝色混合得非常好。也许为 mpaa 尝试不同的颜色?
标签: r plot ggplot2 kernel-density