gpt4 book ai didi

r - ..level ..在ggplot::stat_density2d中是什么意思

转载 作者:行者123 更新时间:2023-12-03 23:28:06 32 4
gpt4 key购买 nike

在构造将fill变量设置为..level..的热图时,我已经看到了一些示例。

如本例所示:

library(MASS)
ggplot(geyser, aes(x = duration, y = waiting)) +
geom_point() +
geom_density2d() +
stat_density2d(aes(fill = ..level..), geom = "polygon")


我怀疑 表示 ..level..设置为存在的相对层数吗?还可以有人给我链接一个很好的例子,说明如何解释这些2D密度图,每个轮廓代表什么等吗?我已经在网上搜索过,但是找不到任何合适的指南。

最佳答案

扩展@hrbrmstr提供的答案-首先,对geom_density2d()的调用是多余的。也就是说,您可以通过以下方式获得相同的结果:

library(ggplot2)
library(MASS)

gg <- ggplot(geyser, aes(x = duration, y = waiting)) +
geom_point() +
stat_density2d(aes(fill = ..level..), geom = "polygon")


让我们考虑其他可视化此密度估计值的方法,这些方法可能有助于弄清正在发生的情况:

base_plot <- ggplot(geyser, aes(x = duration, y = waiting)) + 
geom_point()

base_plot +
stat_density2d(aes(color = ..level..))


Plot1

base_plot + 
stat_density2d(aes(fill = ..density..), geom = "raster", contour = FALSE)


Plot2

base_plot +
stat_density2d(aes(alpha = ..density..), geom = "tile", contour = FALSE)


但是请注意,我们不再看到从 geom_point()生成的点。

Plot3

最后,请注意,您可以控制密度估计的带宽。为此,我们将 xy带宽参数传递给 h(请参见 ?kde2d):

base_plot +
stat_density2d(aes(fill = ..density..), geom = "raster", contour = FALSE,
h = c(2, 5))


Plot4

同样,来自 geom_point()的点被隐藏,因为它们位于对 stat_density2d()的调用的后面。

关于r - ..level ..在ggplot::stat_density2d中是什么意思,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32206623/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com