首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用jStat Javascript绘制SuperImpose正态分布图

用jStat Javascript绘制SuperImpose正态分布图
EN

Stack Overflow用户
提问于 2017-03-21 05:14:56
回答 1查看 401关注 0票数 0

我试着在一些数据上叠加一个正态分布。我已经对数据进行了二进制和绘图,我希望生成一个正态分布来进行比较。为此,我使用了jStat

到目前为止,我已经能够生成正态分布,但我不知道如何将其“放大”到与实际数据相同的大小。

正态分布数据比实际数据小几个数量级,在图形上几乎是平坦的。

我的意思是:

这是一张关闭了蓝色的黑线的图。我假设这些是概率,而不是频率。

下面是我到目前为止用来生成正态分布的代码:

代码语言:javascript
复制
// Mean & Std dev for calculating normal pdf
var mean = jStat.mean(data);
var stdev = jStat.stdev(data);

// get min & max for defining range of values for normal
var min = jStat.min(data);
var max = jStat.max(data);

// binNum = number of bins
var normData = jStat.seq(min, max, binNum, (x) => {
  return jStat.normal.pdf(x, mean, stdev);
});

我已经尝试了乘以样本大小(以及其他东西),但都没有用。有没有一种方法可以将概率转换为频率或‘缩放’正态分布?

EN

回答 1

Stack Overflow用户

发布于 2017-03-22 19:31:11

我终于解决了这个问题。把它留给任何走这条路的人。

解决方案是将得到的正态分布值乘以比例因子binSize * sampleSize

简单地说,得到的正态分布曲线下的面积是1(根据定义)。因子binSize * sampleSize将给出较大曲线下的总面积。因此,您可以缩放正态分布,以便面积相等。

我不确定这是最好的解释,但here是解决方案的一些指导。这是在excel中完成的,但它为我指明了正确的方向。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42914075

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档