注意事项:添加背景的代码要放在绘图代码之前!!否则会出现背景覆盖坐标轴刻度的情况。
% 标记第一个阶段
Xx = [0 8*13];
val = 68; % 设置背景的上限,一般取y轴的最大值
h2 = fill([Xx,fliplr(Xx)],[[0,0],[val,val]],[0.89 0.98 0.94],'EdgeColor','none');hold on;
uistack(h2,'bottom');
% 标记第二个阶段
Xx = [8*13 130];
h2 = fill([Xx,fliplr(Xx)],[[0,0],[val,val]],[0.99 0.92 0.86],'EdgeColor','none');hold on;
uistack(h2,'bottom');
% 标记第三个阶段
Xx = [130 650];
h2 = fill([Xx,fliplr(Xx)],[[0,0],[val,val]],[0.66 0.8 0.96],'EdgeColor','none');hold on;
uistack(h2,'bottom');
% 绘制折线图
plot(-ErS1no*1000,'r-','LineWidth',1.5);hold on;
plot(-ErS1pv*1000,'r--','LineWidth',1.5);hold on;
plot(-ErS2no*1000,'b-','LineWidth',1.5);hold on;
plot(-ErS2pv*1000,'b--','LineWidth',1.5);hold on;
plot(-ErS3no*1000,'k-','LineWidth',1.5);hold on;
plot(-ErS3pv*1000,'k--','LineWidth',1.5);hold on;
xlim([0 650]);
ylim([0 68]);
% 设置坐标轴显示刻度
set(gca,'xtick',[0:13*5:650],...
'xticklabel',{0,5,10,15,20,25,30,35,40,45,50});
绘制完成的效果