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

问题描述 投票:-1回答:3

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

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

matlab plot
3个回答
1
投票

假设您无法访问用于执行绘图的原始数据:

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

为了使其工作,您必须在完成绘图后立即使用此代码,即不绘制任何其他图形(gca是当前轴的句柄)。


0
投票

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

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

0
投票

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

plotAverage(gca,[],'userobustmean',0)
© www.soinside.com 2019 - 2024. All rights reserved.