我刚刚开始使用 matlab,我正在尝试用它绘制一些图表。
问题是我不知道如何从 10 个 plot() 中获取平均数据。任何人都可以指导我吗?谢谢 :)
假设您无权访问用于绘图的原始数据:
plot_data = get(get(gca,'Children'),'YData'); % cell array of all "y" data of plots
average = mean(cell2mat(plot_data));
为了使其工作,您必须在绘制后立即使用此代码,也就是说,不绘制到任何其他图形(gca
是当前轴的句柄)。
假设您的数据按行存储在 amxn 矩阵A
中,n 列对应于连续误差的不同值,m 行对应于不同的曲线。然后检查曲线上的平均值只需使用
Amean = mean(A,1);
plot(Amean)
请看一下这个链接:它解决了我获得平均情节的问题。 https://www.mathworks.com/matlabcentral/fileexchange/27134-plot-average-line 下载文件后,只需将这些脚本放在您的工作文件夹中,然后将此行添加到您的脚本中。
plotAverage(gca,[],'userobustmean',0)