我想使用ggplot2绘制离散概率分布(如泊松分布)。
我无需使用ggplot2就可以绘制它。
plot( dpois( x=0:20, lambda=1 ), type="b")
而且,我能够像这样使用ggplot2绘制连续概率分布。
ggplot(data.frame(x=c(-10,10)), aes(x)) + stat_function(fun=dnorm, args=list(0, 1))
我尝试的代码是:
ggplot(data.frame(x=c(0:10)), aes(x)) + stat_function(geom="point", fun=dpois, args=list(1))
在ggplot2中,如何绘制像第一个一样的离散概率分布?
stat_function
会尝试使用默认n=101
点在边界值之间进行插值。谨慎分布的问题是x必须达到整数值。尝试在示例中指定n = 11:
ggplot(data.frame(x=c(0:10)), aes(x)) +
stat_function(geom="point", n=11, fun=dpois, args=list(1))
geom_point
在这种情况下,使用起来更简单,更直接:
ggplot(data.frame(x=c(0:10)), aes(x)) +
geom_point(aes(y=dpois(x, 1)), colour="red")
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句