2024年6月6日发(作者:)

第二章 MATLAB作图

MATLAB不但擅长于矩阵相关的数值运算,也适合于各种科学可视化表示,能绘制各

种各样的图形。

2.1 二维数据曲线图

2.1.1 绘制单根二维曲线

plot函数的基本调用格式为:

plot(x,y)

其中x和y为长度相同的向量,分别用于存储x坐标和y坐标数据。

>>plot([1 4 2 5],[1 3 -1 2])

%依次将(1,1),(4,3),(2,-1),(5,2)四个点连接起来得一条折线,见图2.1

plot函数最简单的调用格式是只包含一个输入参数:plot(x); 在这种情况下,当x是实

向量时,以该向量元素的下标为横坐标,元素值为纵坐标画出一条连续曲线,这实际上是绘

制折线图。

>> x=[2 4 3 5 2];

>> plot(x) %结果见图2.2

图 2.1 图 2.2

例2-1 在0≤x≤2区间内,绘制曲线

y=2e

-0.5

xcos(4πx)

指令代码如下:

>>x=0:pi/100:2*pi; %产生x轴数据

>>y=2*exp(-0.5*x).*cos(4*pi*x); %对应的y坐标, 点运算

>>plot(x,y)

结果见图2.3

例2-2 绘制参数方程曲线。X=tsin(3t),y=tsin

2

t

指令代码如下:

>>t=0:0.1:2*pi;

>>x=t.*sin(3*t);

>>y=t.*sin(t).*sin(t);

>>plot(x,y);

结果见图2.4

图2.3 图2.4

2.1.2 绘制多根二维曲线

1. plot函数的输入参数是矩阵形式

(1)当x是向量,y是有一维与x同维的矩阵时,则绘制出多根不同颜色的曲线。曲线条

数等于y矩阵的另一维数,x被作为这些曲线共同的横坐标。

(2)当x,y是同维矩阵时,则以x,y对应列元素为横、纵坐标分别绘制曲线,曲线条数等

于矩阵的列数。

(3)对只包含一个输入参数的plot函数,当输入参数是实矩阵时,则按列绘制每列元素

值相对其下标的曲线,曲线条数等于输入参数矩阵的列数。

当输入参数是复数矩阵时,则按列分别以元素实部和虚部为横、纵坐标绘制多条曲线。

2.含多个输入参数的plot函数

调用格式为:plot(x1,y1,x2,y2,…,xn,yn)

(1)当输入参数都为向量时,x1和y1,x2和y2,…,xn和yn分别组成一组向量对,每

一组向量对的长度可以不同。每一向量对可以绘制出一条曲线,这样可以在同一坐标内绘制

出多条曲线。

(2)当输入参数有矩阵形式时,配对的x,y按对应列元素为横、纵坐标分别绘制曲线,曲

线条数等于矩阵的列数。

>>x=linspace(0,2*pi,50);

>>plot(x,cos(x),x,sin(x))

结果见图2.5

例2-3 分析下列程序绘制的曲线。

>>x1=linspace(0,2*pi,100);

>>x2=linspace(0,3*pi,100);

>>x3=linspace(0,4*pi,100);

>>y1=sin(x1);

>>y2=1+sin(x2);

>>y3=2+sin(x3);

>>x=[x1;x2;x3]';

>>y=[y1;y2;y3]';

>>plot(x,y,x1,y1-1)

结果见图2.6