MATLAB具有丰富的获取图形输出的程序集。命令plot可以产生线性x-y图(用命令loglog、semilogx、semilogy或polar取代plot,可以产生对数坐标图和极坐标图)。所有这些命令的应用方式都是相同的,它们只对如何对坐标轴进行分度和如何显示数据产生影响。
1.x-y图
如果 x 和 y 是同一长度的向量,则命令plot(x,y)将画出 y 值对于 x 值的关系图。
2.画多条曲线
为了在一幅图上画出多条曲线,采用具有多个自变量的plot命令:
变量 X 1、 Y 1、 X 2、 Y 2等是一些向量对。每一个x-y对都可以图解表示出来,因而在一幅图上形成多条曲线。多重变量的优点是它允许不同长度的向量在同一幅图上显示出来。每一对向量采用不同的线型。
在一幅图上画一条以上的曲线时,也可以利用命令hold。hold命令可以保持当前的图形,并且防止删除和修改比例尺。因此,随后绘制的一条曲线将会重叠地画在原曲线图上。再次输入命令hold,会使当前的图形复原。
3.画出网格线,定出图形标题,标定 x 轴标记和 y 轴标记
一旦在屏幕上显示出图形,就可以画出网格线,定出图形标题,并且标定 x 轴标记和 y 轴标记。MATLAB中关于网格线、图形标题、 x 轴标记和 y 轴标记的命令如下:
应当指出,一旦恢复命令display,通过依次输入相应的命令,就可以将网格线、图形标题、 x 轴标记和 y 轴标记叠加在图形上。
4.在图形屏幕上书写文本
为了在图形屏幕的点( x , y )上书写文本,采用命令:
例如,利用语句
将从点(3,0.45)开始,水平地写出sin t 。另外,下列语句:
标记出两条曲线,使它们很容易地区分开来。
5.图形类型
下列语句:
将利用标记符号 x 画出一个点状图,而语句:
将用虚线画出第一曲线,用加法符号“+”画出第二条曲线。MATLAB能提供的线和点的类型如表1-14所示。
表1-14 MATLAB能提供的线和点的类型
6.颜色
下列语句
表明,第一幅图采用红线,第二幅图采用绿色“+”号标记。MATLAB提供的颜色如表1-15所示。
表1-15 MATLAB提供的颜色
7.自动绘图算法
在MATLAB中,图形是自动定标的。在画出另一幅图形之前,这幅图形作为现行图将保持不变,但是在画出另一幅图形后,原图形将被删除,坐标轴自动重新定标。关于暂态响应曲线、根轨迹、伯德图、奈奎斯特图等的自动绘图算法已经设计出来,它们对于各类系统具有广泛的适用性,但是并不总是理想的。因此,在某些情况下,可能需要放弃绘图命令中的自动坐标轴定标特性,改用手工选择绘图范围。
8.手工坐标轴定标
如果需要在下列语句指定的范围内绘制曲线:
则应输入命令axis(v),式中 v 是一个四元向量。axis(v)把坐标轴定标建立在规定的范围内。对于对数坐标图, v 的元素应为最小值和最大值的常用对数。
执行axis(v)会把当前的坐标轴定标保持到后面的图形中,再次键入axis恢复自动定标。
axis('square')把图形的范围设定在方形范围内。对于方形长宽比,斜率为1的直线恰位于45 o 上,它不会因屏幕的不规则形状而变形。axis('normal')将使长宽比恢复到正常状态。
9.双纵坐标
x1-y1曲线 y 轴在左,x2-y2曲线 y 轴在右。
10.多子图
MATLAB允许在同一图形窗口布置几幅独立的子图。具体指令
使( m × n )幅子图中第 k 个子图成为当前图。图形窗口包含( m × n )个子图, k 为要指定的当前子图的编号。其编号原则为:左上方为第一子图,然后向右向下依次排序。该指令按缺省值分割子图区域。
在指定的位置上开辟子图,并使其成为当前图。用于手工指定子图位置,指定位置的四元组采用归一化的标称单位,即认为整个图形窗口绘图区域的高、宽的取值范围都是[0,1],而左下角为(0,0)坐标。
产生的子图彼此独立。所有的绘图指令均可以在子图中使用。
11.三维图形显示
三维绘图指令中,plot3最易于理解,它的使用格式与plot十分相似,只是对应第三维空间的参量。具体指令为
x 、 y 、 z 的维度相同,可以是矩阵或者向量, s 设置线型号或者颜色。属性设置同plot函数。
三维网线图绘图指令为mesh(x,y,z,c),其中 c 设置参数。
三维曲面图绘图指令为surf(x,y,z,c),其中 c 是颜色值。
12.特殊图形
(1)直方图(柱形图)
bar(x,y,c),其中, x 、 y 是维数相同的矩阵或者向量,配对的 x 、 y 按对应的列元素为横纵坐标绘制, c 选项是一些绘图控制选项,根据选项不同可以绘制垂直直方图及水平直方图等。
(2)填充图
fill(x,y,'color'),以 x 为横坐标, y 为纵坐标,绘制同色填充的区域图。
(3)阶梯图
stairs(X,Y),在 Y 中由 X 指定的位置绘制元素。
(4)离散杆图
stem(x,y,'参数'),与plot函数相似。
【例1-9】 分别以直方图、填充图、阶梯图和离散杆图的形式绘图。
结果如图1-1所示。
图1-1 以直方图、填充图、阶梯图和离散杆图的形式绘图
(5)饼图
pie3(x,explode),若要偏移第 n 个饼图切片,请将相应的explosion元素设置为1,explode中的元素与 x 中的元素顺序相对应。
【例1-10】 饼图示例。
(6)极坐标图
创建角theta对半径rho的极坐标图,theta是从 x 轴至半径向量所夹的角(以弧度单位指定),rho是半径向量的长度(以数据空间单位指定),选项指定线型、绘图符号以及极坐标图中绘制线条的颜色。