原来的代码如下:
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');