r - 使用 ggplot2 的 stat_function 绘制泊松分布

标签 r ggplot2

我想使用 ggplot2 绘制离散概率分布(如泊松分布)。

我能够在不使用 ggplot2 的情况下绘制它。

plot( dpois( x=0:20, lambda=1 ), type="b")

enter image description here

而且,我能够像这样使用 ggplot2 绘制连续概率分布。
ggplot(data.frame(x=c(-10,10)), aes(x)) + stat_function(fun=dnorm, args=list(0, 1))

enter image description here

我试过的代码是:
ggplot(data.frame(x=c(0:10)), aes(x)) + stat_function(geom="point", fun=dpois, args=list(1))

enter image description here

在 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))

enter image description here

使用 geom_point 更简单、更直接。在这种情况下:
ggplot(data.frame(x=c(0:10)), aes(x)) +
    geom_point(aes(y=dpois(x, 1)), colour="red")

enter image description here

关于r - 使用 ggplot2 的 stat_function 绘制泊松分布,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27644550/

相关文章:

r - 绘制带有正方形和线条的图的放大插图图

r - ggplot2(和 sf)中世界地图的整个地球多边形

r - 保存/导出 ggplot2 数据,而不是绘图本身

R xgboost, Gamma 回归问题

r - 跨不同文档类型缓存 block

r - 如何捕获和操作 ggplot2 默认轴值

r - 如何创建ggplot列表

r - 在 ggplotly 中保持 x 和 y 比例相同(所以方形图)

r - ggplot2 中的语音注视事件图

java - 我如何从 R 中提取 RandomForest 用于生产?