MATLAB绘图---二维图形的绘制

感慨一下:以前用C++做个图很麻烦,看来各有所长!

 一、 绘制单条曲线,函数的调用的格式为

     plot(x,y,'s')

其中x表示横坐标向量,y表示纵坐标向量,s为选项字符串,用于控制线型与颜色

例如绘制正弦曲线y=sin(x)

x=0:pi/50:4*pi;
y=sin(x)
plot(x,y,'-')

                                                                               运行效果图

如果绘制多条曲线,可以使用plot(x1,y1,'s',x2,y2,'s',x3,y3,'s'...)形式,其功能是分别以向量x1,x2,x3为X轴,分别以y1,y2,y3为Y轴,在同一幅图中绘制多条曲线.绘制曲线时,要求向量xk,yk维数相等(k=1,2,3...)

例如:在[0,2*pi]内绘制正弦曲线y=sin(x)与余弦曲线y=cos(x)

x=0:pi/50:2*pi;
y1=sin(x)
y2=cos(x)
plot(x,y1,'k',x,y2,'b-')

                                                                       运行效果图 

                              

   (注:b表示蓝色,k表示黑色,-表示线性

   命令 意义
title 添加图形标题
xlabel  添加x轴的坐标标注
ylabel 添加y轴的坐标标注
text 添加数据点的标注
legend 添加图例
axis 对坐标轴的范围的控制
grid 对图形的网格的控制
hold 图形窗口保持功能

例如: 

x=0:pi/50:2*pi;
y1=sin(x);
y2=cos(x);
%在同一幅图中绘制两条曲线
plot(x,y1,'k:',x,y2,'b-');
%限制坐标轴的范围
axis([0,2*pi,-1,1]);
%运行图的标题
title('正弦曲线与余弦曲线');
%x轴的标记
xlabel('x轴')
%y轴的标记
ylabel('y轴')
%在某一个点做标记
text(3.1,0.1,'sin(x)')
%同样的在某一个点做标记
text(1.3,0.4,'cos(x)')
%图示
legend('sin(x)','cos(x)')

                                                                                  运行效果图  

                                 

二、子图

使用 函数:subplot(m,n,p)

该命令将当前窗口分为m*n个绘图区,即每行n个,共m行

例如:

%划分区域
subplot(2,2,1)
%定义变量
x=-2:0.01:2;
%x与y关系
y=x.*x;
%绘图
plot(x,y,'k');
%图的标题
title('y=x^2');
grid on 
subplot(2,2,2)
x=0:0.01:4;
z1=sqrt(x);
z2=-z1;
plot(x,z1,'k',x,z2,'k')
title('x=y2');
axis on
grid on 
subplot(2,2,3);
x1=-5:0.01:-2;
u1=3*sqrt(x1.*x1/4-1);
plot(x1,u1,'k',x1,-u1,'k');
hold on
x2=2:0.01:5;
u2=3*sqrt(x2.*x2/4-1);
plot(x2,u2,'k',x2,-u2,'k');
hold off
grid on
title('x^2/4-y^2/9=1');
axis tight;
subplot(2,2,4);
x=-4:0.01:4;
w1=3*sqrt(x.*x/4+1);
plot(x,w1,'k',x,-w1,'k');
axis tight
title('x^2/4-y^2/9=-1');
grid on

                                                                                 运行结果:

三、符号 画图

MATLAB系统提供了ezplot和fplot 两个函数画图,以及实现显函数、隐函数以及参数方程.调用格式

ezplot('f',[xmin,xmax]):表示绘制f在xmin<x<xmax内的图形函数.当区间默认时,区间默认为[-2*pi,2*pi];

ezplot('f',[xmin,xmax,ymin,ymax]);表示函数f在xmin<x<xmax与ymin<y<ymax区域的图形,当[xmin,xmax,ymin,ymax]"项默认时,默认为x与y 范围都为[-2*pi,2*pi];

ezplot(x,y,[tmin,tmax]):表示绘制的参数方程为x=x(t) 与y=y(t)在区间tmin<t<tmax内的图形

fplot('fun',[xmin,xmax]):表示绘制的字符串fun所制定的函数xmin<x<xmax内的图形

例如:

ezplot('sin(x)',[-4*pi,4*pi]);

                                                                                      运行效果:

 

ezplot('sin(x)',[-4*pi,4*pi]);ezplot('x^2/4-y^2/9=1',[-5,5,-3,3]);

                                                                             运行效果:

ezplot('x^2+x*exp(y^2)-y*sin(x)+y*exp(x^2)',[-3,3,-3,3])

                                                                       运行效果图

 

fplot('[sin(x),cos(x)]',[-2*pi,2*pi]);
title('sin(x)与cos(x)')

                                                                                     运行效果: