使下方代码增加图例:%% %拟合 %x=[0.5 1 1.5 2 2.5 3]; xx=0:25:425; load('Y.mat') %y=[1.75 2.45 3.81 4.8 8 8.6]; for i=1:12 y=Y(i,:); %plot(xx,y) hold on a1=polyfit(xx,y,1);%1阶多项式最小二乘拟合 y1=polyval(a1,xx); plot(xx,y,'*-',xx,y1,'linewidth',2); legend() end xlabel('时间(小时)'),ylabel('泄漏量(升/分)') title('柱塞泵性能退化轨迹')
时间: 2023-11-27 08:02:28 浏览: 62
好的,您可以在代码中添加 `legend` 函数来创建图例。您可以为每个多项式拟合的线条添加标签,并在 `legend` 函数中指定这些标签。以下是修改后的代码:
```
%% %拟合
%x=[0.5 1 1.5 2 2.5 3];
xx=0:25:425;
load('Y.mat')
%y=[1.75 2.45 3.81 4.8 8 8.6];
figure;
hold on;
for i=1:12
y=Y(i,:);
%plot(xx,y)
a1=polyfit(xx,y,1);%1阶多项式最小二乘拟合
y1=polyval(a1,xx);
plot(xx,y,'*-',xx,y1,'linewidth',2,'DisplayName', ['拟合' num2str(i)]);
end
xlabel('时间(小时)'),ylabel('泄漏量(升/分)')
title('柱塞泵性能退化轨迹')
legend('Location', 'Northwest')
```
在这个修改后的代码中,我们使用 `figure` 函数创建了一个新的图形窗口,并使用 `hold on` 命令来确保每个多项式拟合的线条都在同一个图形中绘制。然后,我们在每个 `plot` 函数中添加了 `DisplayName` 属性,用于为每条曲线添加标签。最后,我们在 `legend` 函数中使用 `'Location'` 参数指定图例的位置,这里我们选择了左上角。
运行这个修改后的代码,您将得到一个带有图例的图形,图例中包括每个多项式拟合的标签。
阅读全文