使用小数据在php中生成不同的钟形曲线

时间:2012-02-08 23:25:16

标签: php function normal-distribution

我希望能够从非常少的数据中生成这些钟形曲线:

bell cuves

我正在寻找一个php中的函数,它会给我这些钟形曲线生成的数据。我还不知道我将用它来显示它们,但我首先需要数据。

我不太擅长数学,我尝试过创建一些正态分布,但是没有一种简单的方法可以说:“我想要一个薄的钟形曲线”或“我想要一个大的曲线”。< / p>

也许使用上图右侧顶部的参数可能很酷。

有人知道如何在PHP中重现这些图的数据点吗?

谢谢!

1 个答案:

答案 0 :(得分:5)

好吧,你可以查看normal distribution's probability density on Wikipedia的公式。

此函数的PHP实现如下所示:

function normal($x, $mu, $sigma) {
    return exp(-0.5 * ($x - $mu) * ($x - $mu) / ($sigma*$sigma))
        / ($sigma * sqrt(2.0 * M_PI));
}

此功能将显示您发布的钟形曲线的值。 我真的建议你阅读有关该函数的维基百科文章,但简单地说,$mu标记钟形曲线中心峰的位置,$sigma确定其宽度({{{{{{{ 1}}意味着更广泛的分布。)