原来的代码如下:

y2 = Convergence2 ;
    m = figure('Name','y2 ','Position',[200,200,500,500]);
    plot(y2 ,'-');
    title('E2 ');
    xlabel('Iteration');
    ylabel('Objective Function Value');

方法如下:
1.使用spline函数进行插值拟合:

y2 = Convergence2 ;
xx = 1:length(y2);
yy = spline(xx, y2, linspace(1, length(y2), 1000)); % 使用linspace生成更多点进行插值
figure('Name','y2 ','Position',[200,200,500,500]);
plot(yy,'-');
title('E2 ');
xlabel('Iteration');
ylabel('Objective Function Value');
2.使用smooth函数进行平滑处理:

```matlab
y2 = Convergence2 ;
yy = smooth(y2, 0.1, 'loess'); % 使用loess方法对y2进行平滑处理
figure('Name','y2 ','Position',[200,200,500,500]);
plot(yy,'-');
title('E2 ');
xlabel('Iteration');
ylabel('Objective Function Value');

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐