首页 > 解决方案 > stat_density_2d 不生成与原始数据匹配的轮廓

问题描述

我有一个显示数据中的点的图(图 1) geom_point() 与 stat_density_2d 叠加 和使用 stat_density_2d 生成的等高线图(图 2) stat_density_2d 本身,相同的数据集

轮廓显然不能很好地代表原始数据。我使用相同的代码生成了其他完美拟合数据的等高线图(图 3) 不同的数据集,相同的代码,点由轮廓很好地表示

我正在使用的代码是:

SolidReg<-ggplot(RhyShp[,c(13,15)], aes(x=Solidity, y=Reg) ) + 
    stat_density_2d(aes(fill = ..level..), geom = "polygon") +
    labs(x = "Solidity", y = "Regularity") +
    theme_classic()

RhyShp 是我的文件 5_102_Rhy.csv 中的数据框,用于生成图像 1 和 2。

有谁知道为什么等高线图不反映数据集?我不确定为什么该代码适用于一个 csv 而不是另一个....

谢谢!

标签: rstat-density2d

解决方案


事实证明,这是一个包含多个相同值的数据的问题,这些数据在 geom_point() 图中不明显地扭曲了密度。一旦这些重复被删除,密度图就反映了数据的真实密度。


推荐阅读