Matlab从几个图中得到一个平均图

时间:2013-08-18 12:19:49

标签: matlab plot

我刚开始使用matlab,我正试图用它绘制一些图形。

问题是我不知道如何从10个plot()中获得平均数据。 任何人都可以指导我吗?谢谢 :) enter image description here

3 个答案:

答案 0 :(得分:1)

假设您无权访问用于绘制地块的原始数据:

plot_data = get(get(gca,'Children'),'YData'); % cell array of all "y" data of plots
average = mean(cell2mat(plot_data));

为了实现这一点,你必须在完成绘图之后立即使用这段代码,也就是说,不需要绘制任何其他图形(gca是当前轴的句柄)。

答案 1 :(得分:0)

假设您的数据按行存储在m×n矩阵A中,其中n列对应于连续错误的不同值,m行对应于不同的曲线。然后检查曲线上的平均值只需使用

Amean = mean(A,1);
plot(Amean)

答案 2 :(得分:0)

请查看此链接:它解决了我获取平均图的问题。 https://www.mathworks.com/matlabcentral/fileexchange/27134-plot-average-line 下载文件后,只需将这些脚本放在您的工作文件夹中,然后将此行添加到脚本中即可。

plotAverage(gca,[],'userobustmean',0)