在同一个表中绘制多个图:
使用hold on和hold off包含住绘制函数
hold on
plot(cos(0:pi/20:pi),':m');%:表示使用虚点绘制线段,m表示品红色(magenta)
plot(sin(0:pi/20:pi));
hold off
也可使用下面的代码将函数图像绘制在同一张表当中:
x=0:0.5:4*pi;
y=sin(x);
h=cos(x);
w=1./(1+exp(-x));
plot(x,y,'bd-',x,h,'gp:',x,w,'ro-');
xlabel('t=0 to 2\pi');%x轴的注释
ylabel('values of functions');%y轴的注释
title('function plots');%图表的标题
legend('sin(x)','cos(x)','logistic')%函数图像的注释
绘制结果:
绘制图像:
x=0:0.5:4*pi;
y=exp(-x);
plot(x,y,'bd-');
legend('e^{-x}');%注意带角标的函数的写法
绘制结果:
使用latex公式为图像添加注解:
x=linspace(0,3);
y=x.^2.*sin(x);
plot(x,y);
line([2,2],[0,2^2*sin(2)]);%绘制直线
str='$$ \int_{0}^{2} x^2\sin(x) dx $$';%latex公式
text(0.25,2.5,str,'Interpreter','latex');%前两个参数为latex公式坐标,后面为固定参数
annotation('arrow','X',[0.32,0.5],'Y',[0.6,0.4]);%添加箭头,箭头坐标范围为0~1,其值表示占画面的比例
将图绘制在多个窗口中:
x=linspace(0,3);
a=x.^2.;
b=sin(2.*pi*x);
figure,plot(x,a);
figure,plot(x,b);
在每个plot前加一个figure:
绘制子图像:
t=0:0.1:2*pi;x=3*cos(t);y=sin(t);
subplot(2,2,1); plot(x,y);axis normal%正常的xy轴
subplot(2,2,2); plot(x,y);axis square%图形的xy轴形成一个正方形
subplot(2,2,3); plot(x,y);axis equal%xy轴的刻度长度相等
subplot(2,2,4); plot(x,y);axis tight%xy轴与图像相切
axis的特性可以叠加,例如将equal和tight写在一起:
subplot(2,2,4); plot(x,y);axis equal tight
设定图像属性:
set(gca,'XTickLabel',{'0','\pi/2','\pi','3\pi/2','2\pi'});%设定刻度
注意,一定是在图像已经绘制完之后再执行上述代码,且要在命令行内执行代码
执行之前:
执行之后:(x轴刻度发生更改)
以下列出一些常用更改属性的代码:
set(gca,'XLim',[0,pi]);%更改x轴的范围
set(gca,'FontSize',25);%更改字体大小
此外,你还可以直接点击图标上的编辑按钮里的图窗属性进行直接更改:
例如要更改线条的属性,则先点击线条,在右边工具栏里进行直接更改:
若要更改坐标轴属性,则点击坐标轴:
此外,plot函数值带有返回值的,因此你如果想要删除一些线段可以这样做:
x=linspace(0,3);
y=x.^2.;h=sin(2.*pi*x);
h=plot(x,y,'-k',x,h,'or');
legend('t^{2}','sin(2\pix)');
绘制好图形之后在命令行内执行代码:
delete(h);
则可以将图表上的执行线段删除。