符符.A数组求幂运算符分行符(该行结果不显-示)1矩阵左除语句结束;分行符(该;行结果显示)%/矩阵右除注释标志.1阵列左除引用符号和转置运算符-/阵列右除非共轭转置运算符2.4MATLAB图形功能MATLAB有很强的图形功能,可以方便地实现数据的视觉化,强大的计算功能与图形功能相结合为MATLAB在科学技术和教学方面的应用提供了更加广阔的天地:下面着重介绍二维图形的画法,对三维图形只作简单叙述,2.4.1二维图形的绘制1、基本命令二维图形的绘制是MATLAB语言图形处理的基础,MATLAB最常用的画二维图形的命令是plot,其调用格式如下:plot (y)plot (X, Y)plot (X, Y, s)》当plot函数仅有一个输入变量时调用格式为plot(Y),此时,如果Y为实向量,则以Y的索引坐标为横坐标,以Y本身各元素作为纵坐标,来绘制图形.例如>》y=[2368];>> plot(y)生成的图形如图2.1,是以序号1,2,3,4为横坐标、数组y的数值为纵坐标画出的折线.24
24 符 符 .^ 数组求幂运算符 , 分行符(该行结果不显 示) \ 矩阵左除 ; 语句结束;分行符(该 行结果显示) / 矩阵右除 % 注释标志 .\ 阵列左除 _ 引用符号和转置运算符 ./ 阵列右除 ._ 非共轭转置运算符 2.4 MATLAB 图形功能 MATLAB 有很强的图形功能,可以方便地实现数据的视觉化.强大的计算功能与图形 功能相结合为 MATLAB 在科学技术和教学方面的应用提供了更加广阔的天地.下面着重 介绍二维图形的画法,对三维图形只作简单叙述. 2.4.1 二维图形的绘制 1、基本命令 二维图形的绘制是 MATLAB 语言图形处理的基础,MATLAB 最常用的画二维图形的命 令是 plot,其调用格式如下: plot(Y) plot(X,Y) plot(X,Y,s) ➢ 当 plot 函数仅有一个输入变量时 调用格式为 plot(Y),此时,如果 Y 为实向量,则以 Y 的索引坐标为横坐标,以 Y 本身各元素作为纵坐标,来绘制图形. 例如 >> y=[2 3 6 8]; >> plot(y) 生成的图形如图 2.1,是以序号 1,2,3,4 为横坐标、数组 y 的数值为纵坐标 画出的折线.
图 2-1>当plot函数有两个输入变量时调用格式为plot(X,Y),此时以第一个变量X作为横坐标,以第二个变量Y作为纵坐标,来绘制图形例如>> x=linspace(0, 2*pi,30);%生成一组线性等距的数值>> y=sin(x);>> plot(x,y)生成的图形如图2.2,是[0,2元]上30个点连成的光滑的正弦曲线,0.00.640DO-040.6o图 2-2当plot函数有三个输入变量时调用格式为plot(X,Y,s),此时第三个输入变量为图形显示属性的设置选项MATLAB语言中提供的对曲线的线型、颜色以及标识的控制符如下线型线方式:“”实线;“:”点线;“-.”点划线;“--”虚线.线型点方式:“.”圆点;“+”加号;“*”星号;“x”x形;“o”小圆.颜色:y黄;r红;g绿;b蓝;w白;k黑;m紫;c青应用上述符号的不同组合可以为图形设置不同的线型,颜色及标识.在调用25
25 图 2-1 ➢ 当 plot 函数有两个输入变量时 调用格式为 plot(X,Y),此时以第一个变量 X 作为横坐标,以第二个变量 Y 作为纵坐标,来绘制图形. 例如 >> x=linspace(0,2*pi,30); % 生成一组线性等距的数值 >> y=sin(x); >> plot(x,y) 生成的图形如图 2.2,是 [0,2 ] 上 30 个点连成的光滑的正弦曲线. 图 2-2 ➢ 当 plot 函数有三个输入变量时 调用格式为 plot(X,Y,s),此时第三个输入变量为图形显示属性的设置选 项 MATLAB 语言中提供的对曲线的线型、颜色以及标识的控制符如下. 线型 线方式: “–” 实线 ;“:”点线;“-.”点划线 ;“- -” 虚线. 线型 点方式: “.”圆点;“+”加号;“*” 星号;“x”x 形;“o”小 圆. 颜色: y 黄; r 红; g 绿; b 蓝; w 白; k 黑; m 紫; c 青. 应用上述符号的不同组合可以为图形设置不同的线型,颜色及标识.在调用
时,设置图形属性的选项应该置于单引号内,当多于一个选项时,各选项直接相连,不需要任何的分隔符,例如>>x=0:pi/15:2*pi:>> y=sin(x);>>plot(x,y,b:+)可得图形如图2.3:0.80.60.40.20.200图 2-3绘制多条曲线在同一个画面上可以画许多条曲线,只需多给出几个数组,例如>>x=0:pi/15:2*pi;>> yl=sin(x);>> y2=cos(x);>> plot(x, yl, x, y2)图形如图2.4o0图2-426
26 时,设置图形属性的选项应该置于单引号内,当多于一个选项时,各选项直接相连,不 需要任何的分隔符. 例如 >> x=0:pi/15:2*pi; >> y=sin(x); >> plot(x,y,’b:+’) 可得图形如图 2.3: 图 2-3 ➢ 绘制多条曲线 在同一个画面上可以画许多条曲线,只需多给出几个数组,例如 >> x=0:pi/15:2*pi; >> y1=sin(x); >> y2=cos(x); >> plot(x,y1,x,y2) 图形如图 2.4 图 2-4
它的另一种画法是利用hold命令在已经画好的图形上,若设置holdonMATLAB将把新的plot命令产生的图形画在原来的图形上.而命令holdoff将结束这个过程.例如:>>x=linspace(0,2*pi,30);>> y=sin(x);>> plot(x,y)>> hold on>> z=cos(x);>> plot(x,z)>> hold off2、图形处理的基本方法》坐标系的控制在默认情况下MATLAB自动选择图形的横、纵坐标的比例,如果你对这个比例不满意,可以用axis命令控制.函数axis用来控制坐标轴的刻度范围及显示形式.函数axis有多种调用形式,不同的调用形式可以实现不同的坐标轴控制功能.其中最简单的调用形式如下:axis([xmin,xmax,ymin,ymax])([]中分别给出x轴和y轴的最大值最小值)axis equal或axis(‘equal')(x轴和y轴的单位长度相同)axissquare或axis(“square)(绘图区呈方形)axis off 或axis(“off")(取消对坐标轴的一切设置)axis on 或axis(‘on')(恢复对坐标轴的一切设置)》网格和标注在一个二维图形上可以利用函数grid绘制坐标网格,用来提高图形的显示效果.还可以利用函数title为图形添加标题、用函数xlabel,ylabel为x轴,y轴添加标注.函数title,xlabel,ylabel的调用格式大同小异,这里仅以函数xlabel为例介绍他们的调用格式xlabel(标注”,‘属性1’,属性值1,“属性2”,属性值2,…)这里的属性是标注文本的属性,包括字体大小、字体粗细、字体名等三个函数的调用结果的区别仅在于标注所处的位置不同.Title给出的标注置于图形的顶部,而xlabel,ylabel则分别置于相应的坐标轴的边上,例如网格函数及坐标标注函数应用示意图27
27 它的另一种画法是利用 hold 命令.在已经画好的图形上,若设置 hold on MATLAB 将把新的 plot 命令产生的图形画在原来的图形上.而命令 hold off 将结束 这个过程.例如: >> x=linspace(0,2*pi,30); >> y=sin(x); >> plot(x,y) >> hold on >> z=cos(x); >> plot(x,z) >> hold off 2、 图形处理的基本方法 ➢ 坐标系的控制 在默认情况下 MATLAB 自动选择图形的横、纵坐标的比例,如果你对这个比例不满 意,可以用 axis 命令控制.函数 axis 用来控制坐标轴的刻度范围及显示形式.函数 axis 有多种调用形式,不同的调用形式可以实现不同的坐标轴控制功能.其中最简单的调用 形式如下: axis([xmin,xmax,ymin,ymax]) ([ ]中分别给出 x 轴和 y 轴的最大值、 最小值) axis equal 或 axis(‘equal’) ( x 轴和 y 轴的单位长度相同) axis square 或 axis(‘square’) (绘图区呈方形) axis off 或 axis(‘off’) (取消对坐标轴的一切设置) axis on 或 axis(‘on’) (恢复对坐标轴的一切设置) ➢ 网格和标注 在一个二维图形上可以利用函数 grid 绘制坐标网格,用来提高图形的显示效果.还 可以利用函数 title 为图形添加标题、用函数 xlabel ,ylabel 为 x 轴,y 轴添加标注.函 数 title, xlabel ,ylabel 的调用格式大同小异,这里仅以函数 xlabel 为例介绍他们 的调用格式. xlabel(‘标注’,‘属性 1’,属性值 1,‘属性 2’,属性值 2,.) 这里的属性是标注文本的属性,包括字体大小、字体粗细、字体名等. 三个函数的调用结果的区别仅在于标注所处的位置不同.Title 给出的标注置于图 形的顶部,而 xlabel ,ylabel 则分别置于相应的坐标轴的边上. 例如 网格函数及坐标标注函数应用示意图
>>x=linspace(0.2*pi.30):y=sin(x):>> plot(x,y)>> grid>》xlabel(‘x(0-2lpi),“FontWeight’,“bold')>》ylabel(‘y=sin(x),“FontWeight’,“bold')>》title(“正弦函数’,“FontSize’,2“FontWeight’“bold)(注意:在标注过程中经常会遇到特殊符号的输入问题,如上图中元的输入,需要使用“\”来引导调用.再比如要输出α,可以利用“alpha”来调用:再比如要显示符号“"”,则需要使用“"”,)上述命令产生下图2.5:正弦函数08000xlusu00x(0-2)图2-5更方便的是用户可以用鼠标来确定字符串的位置,方法是输入命令:>>gtext(“sinx')在图形窗口十字线的交点是字符串的位置,用鼠标点一下就可以将字符串放在那里,>多幅图形在绘图过程中,经常需要将几个图形在同一个图形窗口中表示出来,而不是简单的叠加,这就要用到函数subplot.其调用格式如下:subplot(m,n,p)subplot函数把一个图形窗口分成mXn个子绘图区域,p代表当前的区域号,用户可以通过参数p调用各子绘图区域进行操作,子绘图区域的编号为按行从左自右编号,例如在四个子图中绘制不同的三角函数图>> x=linspace(0,2*pi,30);>> y=sin(x);>> z=cos(x) ;>> u=2*sin(x).*cos(x); v=sin(x). /cos(x);(注意:“.*”,“./”)>》subplot(2,2,1),plot(x,y),axis([02*pi-11]),title(‘sin(x))28
28 >> x=linspace(0,2*pi,30); y=sin(x); >> plot(x,y) >> grid >> xlabel(‘x(0-2\pi)’,‘FontWeight’,‘bold’) >> ylabel(‘y=sin(x)’, ‘FontWeight’, ‘bold’) >> title(‘正弦函数’,‘FontSize’,12, ‘FontWeight’, ‘bold’) (注意:在标注过程中经常会遇到特殊符号的输入问题,如上图中 的输入,需要 使用“\”来引导调用.再比如要输出 ,可以利用“\alpha”来调用.再比如要显示 符号“^”,则需要使用“\^”.) 上述命令产生下图 2.5: 图 2-5 更方便的是用户可以用鼠标来确定字符串的位置,方法是输入命令: >> gtext(‘sinx’) 在图形窗口十字线的交点是字符串的位置,用鼠标点一下就可以将字符串放在那里. ➢ 多幅图形 在绘图过程中,经常需要将几个图形在同一个图形窗口中表示出来, 而不是简单 的叠加,这就要用到函数 subplot.其调用格式如下: subplot(m,n,p) subplot 函数把一个图形窗口分成 m×n 个子绘图区域, p 代表当前的区域号,用户可以 通过参数 p 调用各子绘图区域进行操作,子绘图区域的编号为按行从左自右编号. 例如 在四个子图中绘制不同的三角函数图 >> x=linspace(0,2*pi,30); >> y=sin(x); >> z=cos(x); >> u=2*sin(x).*cos(x); v=sin(x)./cos(x); (注意:“.*”,“./”) >> subplot(2,2,1),plot(x,y),axis([0 2*pi –1 1]),title(‘sin(x)’)