关于matlab:绘制给定向量的均值和标准差?

Plotting the mean and standard deviation of a given vector?

我已经为此搜索了很多,但似乎找不到任何人以最基本的形式提出这个问题。

我有一个向量 x,我已经获取了 mu mean 和 sigma std,我该如何绘制它以便我可以看到数据以钟形曲线的形式分布?

我在 MatLab 帮助中遇到的最接近的是 normspec,我想这不是我想要的。

编辑:

感谢您的所有回复。与其留下多条评论,我想我会编辑我的原始帖子。

我基本上有我的列向量 x,其中填充了 (BPM) 中的心率数据,所以我猜如果你绘制 X 轴,它的范围需要从 0200。到目前为止,只是为了让我的结果更加具体,我一直在为平均值和标准差创建常量(如所指出的那样)。我希望能够像这样可视化这些数据(类似于模糊逻辑工具箱中的 gaussmf 函数):

enter


使用 hist 命令。 @OliCharlesworth 是正确的。你可以使用 hist(x,nbins); 来指定你想要多少个 bin。

例如,由于您的 BPM 来自 [0,200],也许您可??以拆分直方图,以便将它们按 20 BPM 间隔进行分箱,因此您需要 10 个分箱。因此,尝试做 hist(x, 10);

直方图基本上是一个频率计数器。在上面的示例中,您正在做的是收集数据,以便它们属于某些分类。如果我们选择 10 个 bin,这意味着您将有 10 个频率 bin,其中第一个反映了 [0, 19] 之间有多少 BPM,第二个反映了 [20, 39] 之间有多少 BPM,依此类推。您拥有的垃圾箱越多,连续垃圾箱之间的间距就越小。

我不知道您的应用程序需要多少个 bin,但请尝试使用 nbins 参数,看看您会得到什么。


钟形曲线方程如下:

1
f(x, mu, sigma) = (1/(sigma*sqrt(2*pi)))*e^(-(x-mu)^2/(2*sigma^2))

我找不到将其放入更易于阅读的数学方程式的方法,因此如果您有兴趣,请点击以下链接:http://en.wikipedia.org/wiki/Normal_distribution

您找到的值(mu 和 sigma)是常数。要将其拟合到钟形曲线,您需要模拟曲线。等式中的 x 应该只是要绘制的向量或数组(这取决于您的数据)并且应该只是原始数据的长度。

希望这是有道理的。