首页 > 解决方案 > Matlab - (大)嘈杂数据集的误差线

问题描述

嘈杂数据示例

我有十个大型线性阵列(n 个元素),例如

A = [ A1 A2....An ] B = [ B1 B2....Bn ] .... J = [ J1 J2....Jn ]

我可以通过将这些数组相加并除以十来计算这些数组的算术平均值,这大大降低了噪声并显示了我正在寻找的趋势。(请注意,我通常拥有多于或少于十个数据集,但这是具有代表性的。此外,n 会有所不同,但通常是 10,000 个数据点)

我想做的是用代表原始十个数组中的噪声的误差线绘制这个平均值。数组很大,所以可能有合理增量的误差线(比如在与平均值的偏差最大的整个范围内有十个误差线)。

该图像显示了 10 个噪声数据集,以灰线绘制,平均值为黑线。

谢谢

标签: matlabplot

解决方案


通过编写一段(看起来)冗长的代码,我为这个问题找到了一个相当费力的解决方案。

该代码获取所有输入数组并创建两个新数组。一个是每个 x 的最大 y 值,一个是最小值。这是通过 matlab 中的 max 和 min 函数完成的。

从最大值中减去最小值以创建每个 x 值处的“误差”大小的数组。

然后将误差数组的每第 n 个值绘制为所有原始输入数组的算术平均值之上的误差条。

这是解决问题的方法——屏幕截图显示了结果——但我想知道是否有更优雅的“内置”解决方案可以一次性完成。

在此处输入图像描述


推荐阅读