Matlab常用绘图代码
包含常用分界线绘制、图片局部填充以及多图例绘制说明。
绘制横线、竖线
plot([0,1],[1,1],'r' ,'linewidth',2) %画横线
plot([1,1], [0,1],'b','linewidth',2) %画竖线
一页多图
%竖版
subplot(2,1,1)
plot([0,2],[1,1],'r' ,'linewidth',2)
subplot(2,1,2)
plot([1,1], [0,2],'b','linewidth',2)
%横版
subplot(1,2,1)
plot([0,2],[1,1],'r' ,'linewidth',2)
subplot(1,2,2)
plot([1,1], [0,2],'b','linewidth',2)
效果图:
区域颜色填充
x=1:0.05:10
figure(1)
plot([1,10],[0,0])
hold on
fill([1 10 10 1],[0 0 1 1],'y')
plot(x,sin(x))
效果图:
填充规则区域
x=1:0.05:10
figure(1)
plot([1,10],[0,0])
hold on
fill([1 10 10 1],[0 0 1 1],'y')%[1 10 10 1]逆时针横坐标,[0 0 1 1]逆时针纵坐标
plot(x,sin(x))[1 10 10 1]
效果图
区域线条填充
x=0:10;
x_int=0.1
x_interp=min(x):x_int:max(x)
y1=x;
y2=-x;
L=length(x_interp);
y1_interp=interp1(x,y1,x_interp)
y2_interp=interp1(x,y2,x_interp)
%画出原来的线条
plot(x,y1,'r',x,y2,'b')
% 竖向线条填充
for i=1:L
line( [x_interp(i),x_interp(i)],[y2_interp(i), y1_interp(i)],'color','black' )
end
绘制多个图例
%新版本Matlab已经可以在图形编辑器中直接添加多图例,旧版本Matlab没有该功能,需要借助代码完成。
x=1:10
y1=x
y2=2*x
y3=0.2*x
y4=0.5*x
b1=plot(x,y1,x,y2)
hold on
b2=plot(x,y3,x,y4)
legend(b1,'y1','y2')
ah=axes('position',get(gca,'position'),'visible','off')
legend(ah,b2,'y3','y4')
效果图