如何使用 ggplot 绘制 npdensity 对象?

How do I plot a npdensity object with ggplot?

如何使用 ggplot 绘制一个 npdensity 对象,就像 npudens 的输出一样?

geom_linepredictnpdensity 的内置功能一起使用。

df <- data.frame(x = rnorm(1000))
df.kde <- npudens(~x, data=df)
ggplot(df, aes(x)) 
  + stat_function(fun = function(new.x) predict(df.kde, newdata=data.frame(x=new.x)))

如果您在足够多的 x 点上进行了评估,使图形看起来不错,则可以使用 eval$xdens

geom_line(aes(df.kde$eval$x, df.kde$dens))