




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第二十章 MATLAB基础20.1 MATLAB基本知识MATLAB是一种交互式的以矩阵为基础的系统计算平台,它用于科学和工程的计算与可视化。它的优点在于快速开发计算方法,而不在于计算速度。20.1.1 MATLAB基本使用一、MATLAB启动(1)方法一当MATLAB安装到硬盘上以后,一般会在Windows桌面上自动生成MATLAB程序图标。在这种情况下,只要直接点击那图标即可启动MATLAB,打开如图1.1的MATLAB操作桌面(Desktop)。注意:本书作者建议用户优先采用启动“方法一”。(2)方法二假如Windows桌面上没有MATLAB图标,那么点击matlab 文件夹下的快捷方式
2、图标。图20.1-1 Desktop操作桌面的默认外貌二、Matlab菜单的含义MATLAB R2010a版的Desktop操作桌面,是一个高度集成的MATLAB工作界面。其默认形式,如图1.1-1所示。该桌面的上层铺放着三个最常用的界面:指令窗(Command Window)、当前目录(Current Directory)浏览器、MATLAB工作内存空间(Workspace)浏览器、历史指令(Command History)窗。l 命令窗口该窗是进行各种MATLAB操作的最主要窗口。在该窗内,可键入各种送给MATLAB运作的指令、函数、表达式;显示除图形外的所有运算结果;运行错误时,给出相关
3、的出错提示。l 当前目录浏览器在该浏览器中,展示着子目录、M文件、MAT文件和MDL文件等。对该界面上的M文件,可直接进行复制、编辑和运行;界面上的MAT数据文件,可直接送入MATLAB工作内存。此外,对该界面上的子目录,可进行Windows平台的各种标准操作。此外,在当前目录浏览器正下方,还有一个“文件概况窗”。该窗显示所选文件的概况信息。比如该窗会展示:M函数文件的H1行内容,最基本的函数格式;所包含的内嵌函数和其它子函数。l 工作空间浏览器该浏览器默认地位于当前目录浏览器的后台。该窗口罗列出MATLAB工作空间中所有的变量名、大小、字节数;在该窗中,可对变量进行观察、图示、编辑、提取和保
4、存。l 历史指令窗该窗记录已经运作过的指令、函数、表达式,及它们运行的日期、时间。该窗中的所有指令、文字都允许复制、重运行及用于产生M文件。l 捷径(Start)键引出通往本MATLAB所包含的各种组件、模块库、图形用户界面、帮助分类目录、演示算例等的捷径,以及向用户提供自建快捷操作的环境。三、帮助的使用读者接触、学习MATLAB的起因可能不同,借助MATLAB所想解决的问题也可能不同,从而会产生不同的求助需求。如对于初学者,最急于知道的是:MATLAB的基本用法。又如MATLAB老用户很想知道的是:MATLAB新版本有什么新特点、新功能。再如对科研工作者来说,面对不断变化的实际问题,常常产生
5、两类困惑:知道具体指令,但不知道该怎么用;或想解某个具体问题,不知道MATLAB有哪些指令可用。MATLAB作为一个优秀的科学计算软件,其帮助系统考虑了不同用户的不同需求,构成了一个比较完备的帮助体系。并且,这种帮助体系随MATLAB版本的重大升级,其完备性和友善性都会有较大的进步。不管以前是否使用过MATLAB,任何用户都应尽快了解MATLAB的帮助系统,掌握各种获取帮助信息的方法。只有这样,用户才可能较好地运用MATLAB资源,快捷、可靠、有效地独立解决自己面临的各种问题。20.1.2 MATLAB变量与函数一、MATLAB中变量的命名规则:(1)变量区分字母的大小写;(2)名字不能超过1
6、9个字符,第19个字符后的字符被忽略;(3)变量必须以字母开头,之后可以是任意字母、数字或者下滑线;(4)变量中不能含有标点符号。表20.2-1 MATLAB为数学常数预定义的变量名预定义变量含 义预定义变量含 义eps浮点数相对精度NaN或nan不是一个数(Not a Number),如0/0,i 或 j虚单元Inf或inf无穷大,如1/0pi圆周率 intmax可表达的最大正整数,默认()realmax最大正实数,默认1.7977e+308intmin可表达的最小负整数,默认(-)realmin最小正实数,默认2.2251e-308二、数学元算符号及标点符号(1)数学的运算符号运算符函义运
7、算符函义+加法运算-减法运算*乘法运算.*点乘运算/除法运算(也表示右除)./点除运算左除运算.乘幂运算点乘幂运算标点符号(1)MATLAB的命令后的逗号(或无标点符号)显示命令的结果;分号不显示命令的结果;(2)“%”:注释文字的标志;(3)“”;续行标志。三、数据的输出格式控制format格式含义Format short短格式的方式,显示5位定点的十进制数。Format long长格式的方式,显示15位定点的十进制数。Format short gFormat long当数据大于1000或小于1时变会以科学计数法显示(-e),若想坚持用整数部分加小数部分的格式显示,就再后面加gFormat
8、hex十六进制格式方式Format bank银行格式。按元、角、分(小数点后具有两位)的固定的格式Format +格式,以+、-和空格分别表示整数、负数和零元素Format short e短格式e方式,显示5位定点的十进制数。Format long e长格式e方式,显示15位定点的十进制数。Format rat分数格式形式,用有理数逼近显示数据。如pi显示355/113Format loose 松散格式,数据之间有空格。Format compact紧凑格式,数据之间无空格Vpa(date,n)将数据date以n个有效数据显示四、数学函数函数名称函数名称Sin(x)正弦函数Asin(x)反正弦函
9、数Cos(x)余弦函数Acos(x)反余弦函数Tan(x)正切函数Atan(x)反正切函数Abs(x)绝对值Max(x)最大值Min(x)最小值Sum(x)元素的总和Sprt(x)开平方Exp(x)以e为底的指数Log(x)自然对数Fix(x)取整:截尾取整Log10(x)以10为底的自然数Round(x)取整:四舍五入取整Sign(x)符号函数Floor(x)取整:不超过x的最大整数Ceil(x)大于x的最小整数20.1.3 MATLAB数组与矩阵MATLAB以矩阵为数据操作的基本单位。一、数组数组实际上就是向量,下标从1开始变化。1、创建数组命令格式命令含义x=a,b,c,d,e,f创建包
10、含定义元素的数组x=first:last创建从first开始,步长为1,到last结束的数组x=first:step:last创建从first开始,步长为step,到last结束的数组x=linspace(first,last,n)线性等分创建数组,返回以first为初始值,last为终值的等间距的n个元素x=logspace(first,last,n)对数等分创建数组,返回以10first为初始值,10last为终值的n个元素,并且这n个元素的对数值是等距的,相当于这n个元素为10 . linspace(first,last,n)例1:a=1:5a=1 2 3 4 5例2:a=1:2:10a
11、= 1 3 5 7 9例3:a=linspace(0,1,5)a=0 0.2500 0.5000 0.7500 1.0000b=10.ab=1.0000 1.7783 3.1623 5.6234 10.0000c=logspace(0,1,5)c=1.0000 1.7783 3.1623 5.6234 10.00002数组元素的访问格式含义x(i)访问数组x的第i个元素x(a:b:c)访问数组的从第a个元素开始,以步长为b,到第c个元素(但不超过c),b可以为负数,b缺损时为1.x(a b c d)提取数组x的第a、b、c、d个元素构成一个新的数组x(a),x(b),x(c),x(d)例4:d
12、=a(1 2 3 5)d=0 0.2500 0.5000 1.00003、行向量与列向量在创建数组时,如果元素以空格或逗号分隔,创建的就是行向量,如果分号分隔,创建的就是列向量。例5e=1,3,5,7,9e=1 3 5 7 9f=1;3;5;7f= 1 3 5 7二、矩阵标量可以看作11的矩阵,行向量可以看作是只有一行的矩阵,列向量可以看作是只有一列的矩阵。1、 直接法建立矩阵(1) 用中括号起来表示;(2) 同一行内用空格或逗号隔开;(3) 不同行使用分号或者回车分开。注意:输入矩阵时,严格要求所有的行有相同的列。例1:A=1 2 3;4 5 6;7 8 9A= 1 2 3 4 5 6 7
13、8 92、 特殊的矩阵建立a=产生一个空矩阵,当对一项操作无结果时,返回空矩阵,空矩阵大小为零b=zeros(n)产生一个n阶方阵的零方阵b=zeros(m,n)产生一个m行、n列的零方阵b=zeros(size(A)生成与矩阵A同型的零方阵ones(n)产生一个元素全为1的n行、n列的矩阵ones(m,n)产生一个元素全为1的m行、n列的矩阵ones(m,n)产生一个元素全为1的m行、n列的矩阵ones(size(A)生成与矩阵A同型且元素全为1的矩阵eye(n)生成nn单位阵eye(m,n)生成mn单位阵eye(size(A)生成与矩阵A相同大小的单位阵rand()产生一个服从0-1之间的
14、均匀帆布的随机矩阵randn()产生一个均值为0方差为1的正态分布的随机数矩阵diag(x)以数组x的元素为对角元生成一个对角阵magic(n)产生一个n阶魔方阵,其所有元素和、列元素和、对角线元素和均相当例6产生一个34随机矩阵 R=rand(3,4)R = 0.9501 0.4860 0.4565 0.4447 0.2311 0.8913 0.0185 0.6154 0.6068 0.7621 0.8214 0.7919例7产生一个在区间10, 20内均匀分布的4阶随机矩阵 a=10;b=20; x=a+(b-a)*rand(4)x = 19.2181 19.3547 10.5789 11
15、.3889 17.3821 19.1690 13.5287 12.0277 11.7627 14.1027 18.1317 11.9872 14.0571 18.9365 10.0986 16.0379例8产生均值为0.6,方差为0.1的4阶矩阵 mu=0.6; sigma=0.1; x=mu+sqrt(sigma)*randn(4)x =0.8311 0.7799 0.1335 1.05650.7827 0.5192 0.5260 0.48900.6127 0.4806 0.6375 0.79710.8141 0.5064 0.6996 0.85273、 矩阵中元素的操作A(r,:)取矩阵的
16、第r行A(:,j)取矩阵的第j列A(:)依次提取矩阵的A的每一行,将A拉伸为一列向量A(i1:i2,j1:j2)取矩阵A的第i1i2行,第j1j2列构成新矩阵A(i2:-1:i1,:)逆序提取矩阵A的第i1i2行,构成新矩阵A(:,j2:-1:j1,:)逆序提取矩阵A的第j1j2行,构成新矩阵A(i1:i2,:)=删除矩阵A的第i1i2行,构成新矩阵A(:,j1:j2)删除矩阵A的第j1j2行,构成新矩阵A,B;A;B将矩阵A和B拼接成新矩阵三、矩阵的运算1、矩阵的转置和共轭转置(1)对实矩阵,转置使用符号“”;(2)对复矩阵,转置使用符号“.”,共轭转置用“”。例1:c=1+I,1;2-i,
17、2,;d=c %共轭转置d= 1.0000-1.0000i 2.0000+i 1.0000 2.0000e=c. %转置e= 1.0000+1.0000i 2.0000-1.0000i 1.0000 2.00002、运算A+B、A-B、A.*BA=1, 1, 1; 1, 2, 3; 1, 3, 6;B=8, 1, 6; 3, 5, 7; 4, 9, 2;AB=A+BA-=A-B结果显示:A+B=9 2 74 7 105 12 8AB=-7 0 -5-2 -3 -4-3 -6 44、 运算A*BX= 2 3 4 5; 1 2 2 1;Y=0 1 1; 1 1 0; 0 0 1; 1 0 0;Z=
18、X*Y结果显示为:Z= 8 5 6 3 3 35、 矩阵除法例:a=1 2 3; 4 2 6; 7 4 9b=4; 1; 2;x=ab则显示:x= -1.5000 2.0000 0.5000如果a为非奇异矩阵,则ab和b/a可通过a的逆矩阵与b阵得到: ab = inv(a)*b b/a = b*inv(a)6、 det(A):方阵的行列式 A=1 2 3;4 5 6;7 8 9A = 1 2 3 4 5 6 7 8 9 D=det(A)D = 07、 inv(A):方阵的逆例:求矩阵的逆矩阵方法一A=1 2 3; 2 2 1; 3 4 3;Y=inv(A)或Y=A(-1)则结果显示为Y =
19、1.0000 3.0000 -2.0000 -1.5000 -3.0000 2.5000 1.0000 1.0000 -1.0000方法二:由增广矩阵进行初等行变换B=1, 2, 3, 1, 0, 0; 2, 2, 1, 0, 1, 0; 3, 4, 3, 0, 0, 1;C=rref(B) %化行最简形X=C(:, 4:6) %取矩阵C中的A(-1)部分显示结果如下:C = 1.0000 0 0 1.0000 3.0000 -2.0000 0 1.0000 0 -1.5000 -3.0000 2.5000 0 0 1.0000 1.0000 1.0000 -1.0000X = 1.0000
20、3.0000 -2.0000 -1.5000 -3.0000 2.5000 1.0000 1.0000 -1.0000例 A=2 1 -1;2 1 2;1 -1 1; format rat %用有理格式输出 D=inv(A)D = 1/3 0 1/3 0 1/3 -2/3 -1/3 1/3 0 8、 rank(A):矩阵A的秩9、 orth(A):将矩阵A的列向量组正交化10、trace(A):方阵A的迹函数 trace格式 b=trace (A) %返回矩阵A的迹,即A的对角线元素之和。11、V,D=eigA:求方阵A的特征值、特征向量,其中V为特征向量组成的方阵,D为特征值组成的对角阵。例
21、:A=1 2 0;2 5 -1;4 10 -1;eig(A)%求A的特征值ans= 3.73210.2679 1.0000x,y=eig(A)x= 0.2440 -0.9107 0.4472 0.333 0.3333 0.0000 -0.9107 -0.2440 0.8944y= %Y特征值对角阵 3.7321 0 0 0 0.2679 0 0 0 1.000020.2 MATLAB编程20.2.1 M文件用MATLAB语言编写的程序,称为M文件一、文件建立方法1、从MATLAB主窗口的File菜单中选择New菜单项,在选择M-file命令;或者在MATLAB命令窗口输入命令edit;或者单击
22、MATLAB主窗口工具栏的New M-file命令的按钮,屏幕将出现MATLAB的文本编辑器窗口;2、在文本编辑窗口中输入程序内容;3、点击File-Save,存盘,扩展名为*.m。二、打开已有的M文件的方法1、菜单操作:从MATLAB主窗口的File菜单中选择Open命令,则屏幕出现Open对话框,在Open对话框中选中所需打开的M文件。在文档窗口可以对打开的M文件进行编辑修改,编辑完成后,将M文件存盘。2、命令操作:在MATLAB命令窗口输入命令:edit文件名,则打开指定的M文件;3、命令按钮操作:单击MATLAB主窗口工具栏上的Open File命令按钮,再从弹出的对话框中选择所需要打
23、开的M文件;4、双击一个M文件。三、两种M文件1、命令文件:没有参数的输入和输出,在文件中赋予了一些命令,通过对这些命令文件的执行,用户能完成某些计算。2、函数文件:可以有输入输出变量,在文件中定义用户所需要的函数,当某些程序使用该函数时即可调用该函数。函数文件有function语句引导,其基本结构为:function输入参数表=函数名(输入参数表)注释行函数体说明:(1) 函数文件必须以function开始,用来标识此文件时函数文件。(2) 使用%作为注释符,只作为于本行。若注释有多行,则每行都以%开头。(3) 命令窗口中执行该函数,也可以被其他文件或函数调用,但需要注释路径。(4) fun
24、ction后紧跟的注释,就是使用help命令查看的内容。(5) 函数文件名要与函数名相同。例1 利用函数文件,实现直接坐标系(x,y)与极坐标(,)之间的转换。解:建立M文件:tran.mfunctionrho,theta=tran(x,y)%函数突然实现直角坐标到极坐标的转换;%输入参数直坐标x和y,输出参数为极径rho和极角thetarho=sprt(x*x+y*y);theta=atan(y/x);end function四、函数调用1、函数调用的一般格式是:输出实参表=函数名(输入实参表)例2利用前面例子中的函数tran实现直角坐标到极坐标的转换。解: rh,th=tran(3,4)r
25、h= 5th=727/7842、嵌套调用:Matlab中,在函数文件的题头定义的函数称为主函数,而在内部定义的其他函数均被视为子函数。子函数只能为主函数或同一函数下其他子函数所调用。例3嵌套调用3、递归调用:一个函数调用它自身称为函数的递归调用。4、函数参数的可调性在调用函数时,MATLAB用两个永久变量nargin和narout分别记录调用该函数时的输入实参和输出实参的个数。只要在函数文件中包含这两个变量,就可以准确地知道该函数文件被调用时的输入输出参数个数,从而决定函数如何进行处理。例3 建立M文件:narginxp.mfuction fout=charray(a,b,c)if nargi
26、n=1fout=a;elseif nargin=2fout=a+b;elseif nargin=3fout=(a*b*c)/2end20.2.2 关系与逻辑运算符1、关系操作符操作符说明操作符说明=大于或等于大于=不等于(注意)2、逻辑运算符操作符说明&与|或非20.2.3 程序控制结构一、顺序结构1、直接赋值语句格式:变量名=负责表达式例1 x=0:pi/2:2*pi2、函数调用赋值语句格式:返回变量列表=函数名(输入参数列表)例2 X=magic(4);U,V=eig(X)3、输入输出赋值语句输入数据可用input函数,格式为:A=input(提示信息)%输入可供计算的数据A=input(
27、提示信息,s)%输入字符串输出数据可用disp函数,其调用格式为:disp(输出项),其中输出项既可以为字符串,也可以为矩阵。例2求一元二次方根ax2+bx+c=0的根。解:建立M文件:inputxp.ma=input(a=?);b=input(b=?);c=input(c=?);d=b*b-4*a*c;x=(-b+sqrt(d)/(2*a),( (-b-sqrt(d)/(2*a);disp(x1=,num2str(x(1), x2=,num2str(x(2);4、程序的暂停和中止暂停程序的执行:pause(延迟秒数),其中延迟秒数表示暂停的时间,如果省略,则暂停程序,直到用户按任意键后,程序
28、继续执行。强行中止程序的运行使用Ctrl+C命令。二、选择结构1、if语句格式一:if 逻辑表达式执行语句end格式三:if 逻辑表达式1执行语句1elseif 逻辑表达式2执行语句2else执行语句nend格式二:if 逻辑表达式执行语句1else执行语句2end例 3 testif.mi=input(i=?);j=input(j=?);if i=j a=1;elseif i=2*j a=2;else a=0;enda注:如果条件表达式是一个逻辑数组,则只有所有元素为真时,条件为真。例4 A=1,0;2,3;B=1,1;3,4;if A=Bflag=1;elseif ABflag=2;els
29、eif A&Bflag=3else if AB-1flag=4;endflag2、switch语句格式:switch 开关表达式case 表达式1语句组1case表达式2,表达式3,表达式k%有一个为真,就执行语句组2otherwise语句组nend例5某商场对顾客购买商品实行打折销售,标准如下(商品的价格用price来表示);price200,没有折扣:200price500,3%折扣;500price0)summean=sum/countend20.3 MATLAB作图20.3.1 二维图形一、基本绘图语句plotMATLAB作图通过描点、连线实现,故在画一个曲线图形之前,必须先取得该图形
30、的一系列的点坐标(即横坐标,纵坐标),然后将该点集的坐标传给MATLAB函数画图。在线条多于一条时,若用户没有指定使用颜色,则plot循环使用由当前坐标轴颜色顺序属性(current axes ColorOrder property)定义的颜色,以区别不同的线条。在用完上述属性值后,plot又循环使用由坐标轴线型顺序属性(axes LineStyleOrder property)定义的线型,以区别不同的线条。用法:plot(x,y): x为自变量(横坐标),y为因变量(纵坐标)plot(y):y为因变量(纵坐标),以数组y的下标为自变量(横坐标)plot(X1,Y1,X2,Y2,),将多条线画
31、在一起plot(X1,Y1,LineSpec1,X2,Y2,LineSpec2) 将按顺序分别画出由三参数定义Xi,Yi,LineSpeci的线条。其中参数LineSpeci指明了线条的类型,标记符号,和画线用的颜色。在plot 命令中我们可以混合使用三参数和二参数的形式:plot(X1,Y1,LineSpec1,X2,Y2,X3,Y3,LineSpec3)plot(,PropertyName,PropertyValue,) 对所有的用plot生成的line图形对象中指定的属性进行恰当的设置。h = plot() 返回line图形对象句柄的一列向量,一线条对应一句柄值。说明 参数LineSpe
32、c功能 定义线的属性。Maltab允许用户对线条定义如下的特性:属性值含义属性值含义属性值含义y黄色.点上三角m洋红o圈s正方形b蓝色x叉h六角形r红色+加号d菱形g绿色*星号-连线c青色p五角星:短虚线w白色大于-长虚线v下三角例1 t = 0:pi/20:2*pi; plot(t,t.*cos(t),-.r*) hold on plot(exp(t/100).*sin(t-pi/2),-mo) plot(sin(t-pi),:bs) hold off图形结果为图20.3-1。例2 plot(t,sin(2*t),-mo, LineWidth,2,MarkerEdgeColor,k, Mar
33、kerFaceColor,.49 1 .63,MarkerSize,12)图形结果为图7-2。图20.3-1 二维曲线图 图20.3-2 二维图形的绘制二、符号函数(显函数、隐函数、参数方程)画图1、函数ezplot格式:(1)ezplot(f(x),a,b),在axb内绘制显函数f(x)的函数图。(2)ezplot(f(x,y),xmin,xmax,ymin,ymax),在区间xminxxmax、yminyymax绘制隐函数f(x,y)=0的函数图。(3)ezplot(x(t),y(t),tmin,tmax),在区间tmintezplot(sin(x),0,pi)2、函数fplot格式:fp
34、lot(fun,lims),绘制字符串fun制定的函数在lims=xmin,xmax的图形注意:(1)fun必须是M文件的函数名或独立变量为x的字符串; (2)fplot函数不能画参数方程和隐函数图形,但在一个图形上可以画多个图形。例2 在-1,2上画y=e2x+sin(3x2)的图形解:首先建立一个文件没myfun1.m;fuction Y=myfun1(x)Y=exp(2*x)+sin(3*x2)然后在命令窗口输入命令:fplot(myfun1,-1,2)例2 x、y的取值范围在-2,2,画函数tanh(x),sin(x),cos(x)图形fplot(tanh(x),sin(x),cos(
35、x),2*pi*-1,1,-1,1,-1,1)3、对数坐标图说明,很多工程问题,通过对数据进行对数转换可以更清晰地看出数据的某些特征,在对数坐标系中描绘数据点的曲线,可以可以直接地表现对数转换。对数转换有双对数坐标系转换和单独坐标系转换两种。双对数坐标转换函数loglog;单轴对数坐标转换:semilogx,semilogyloglog(X,Y):x,y坐标轴是以10为底的对数比例坐标系semilogx(X,Y):x坐标轴是对数坐标系semilogy(X,Y):y坐标轴是对数坐标系例4 绘制y=x3的函数图像,对数坐标图、半对数坐标图fplot(x3,-3,3)x=logspace(-3,3,
36、30);loglog(x,x.3)semilogx(x,x.3)20.3.2 三维图形一、空间曲线函数:plot3格式:plot3(x,y,z,s)其中s置顶颜色、线形等。若x,y,z的取值均是n维向量,则分别表示曲线上点集的横坐标、纵坐标、和竖坐标;若x,y,z都是mn矩阵,对应的每一列表示表示一条曲线。例 在区间0,10画出参数曲线x=sin(t),y=cos(t),z=t。t=0:pi/50:10*pi;plot3(sin(t),cos(t),t)例 画多条曲线观察函数Z=(X+Y)2x=-3:0.1:3;y=1:0.1:5;X,Y=meshgrid(x,y);%产生一个向量x为行、向量
37、y列的矩阵Z=(X+Y).2;plot3(X,Y,Z)二、空间曲面1、surf(x,y,z):画出数据点(x,y,z)表示的曲面画函数Z=(X+Y)2图形x=-3:0.1:3;y=1:0.1:5;X,Y=meshgrid(x,y);%产生一个向量x为行、向量y列的矩阵Z=(X+Y).2;surf(X,Y,Z)shading flat 2、mesh(x,y,z):画网格曲面画函数Z=(X+Y)2在不同视角的网格图。x=-3:0.1:3;y=1:0.1:5;X,Y=meshgrid(x,y);%产生一个向量x为行、向量y列的矩阵Z=(X+Y).2;mesh(X,Y,Z)3、meshz(X,Y,Z)
38、: 在网格周围画一个curtain图(如,参考平面)例绘peaks的网格图X,Y=meshgrid(-3:.125:3);Z=peaks(X,Y);meshz(X,Y,Z)20.3.3 图形修饰一、在图形上加格栅、图例和标注命令1 grid功能 给二维或三维图形的坐标面增加分隔线。该命令会对当前坐标轴的Xgrid,Ygrid,Zgrid的属性有影响。用法 grid on 给当前的坐标轴增加分隔线。grid off 从当前的坐标轴中去掉分隔线。 grid 转换分隔线的显示与否的状态。 grid(axes_handle,on|off) 对指定的坐标轴axes_handle是否显示分隔线。命令2 g
39、text功能 在当前二维图形中用鼠标放置文字。当光标进入图形窗口时,会变成一个大十字,表明系统正等待用户的动作。用法 gtext(string) 当光标位于一个图形窗口内时,等待用户单击鼠标或键盘。若按下鼠标或键盘,则在光标的位置放置给定的文字“string” h = gtext(string) 当用户在鼠标指定的位置放置文字“string”后,返回一个text图形对象句柄给h。命令3 legend功能 在图形上添加图例。该命令对有多种图形对象类型(线条图,条形图,饼形图等)的窗口中显示一个图例。对于每一线条,图例会在用户给定的文字标签旁显示线条的线型,标记符号和颜色等。当所画的是区域(pat
40、ch或surface对象)时,图例会在文字旁显示表面颜色。Matlab在一个坐标轴中仅仅显示一个图例。图例的位置有几个因素决定,像遮挡的对象等,用户可以用鼠标拖动图例到恰当的位置,双击标签可以进入标签编辑状态。用法 legend(string1,string2,) 用指定的文字string在当前坐标轴中对所给数据的每一部分显示一个图例。legend(h,string1,string2,) 用指定的文字string在一个包含于句柄向量h中的图形显示图例。用给定的数据对相应的图形对象加上图例。legend(string_matrix) 用字符矩阵参量string_matrix的每一行字符串作为标签
41、。legend(h,string_matrix) 用字符矩阵参量string_matrix的每一行字符串作为标签给包含于句柄向量h中的相应的图形对象加标签。legend(axes_handle,) 给由句柄axes_handle指定的坐标轴显示图例。legend(off) 从当前的坐标轴,或是由axes-handle指定的坐标轴中除掉图例。legend(axes_handle,off) 从由axes_handle指定的坐标轴中除掉图例。legend_handle = legend 返回当前坐标轴中的图例句柄,若坐标轴中没有图例存在,则返回空向量。legend 对当前图形中所有的图例进行刷新。l
42、egend(legend_handle) 对由句柄legend_handle指定的图例进行刷新。legend(,pos) 在指定的位置pos放置图例见下表。Pos取值pos=-1pos=0Pos=1图例位置坐标轴之外的右边坐标轴之内,有可能遮挡部分图形坐标轴的右上角(缺省位置)Pos取值pos=2pos=3pos=4图例位置坐标轴的左上角在坐标轴的左下角坐标轴的右下角图20.3-3h = legend() 返回图例的句柄向量。legend_handle,object_handles = legend() 返回图例句柄,该句柄为坐标轴定义于图例中的图形对象、line对象、text对象的句柄。这些
43、句柄允许用户对每个对象进行详细的操作。例1x = -pi:pi/20:pi;plot(x,(cos(x).2,rd,x,asin(x),-.b)h = legend(cos2x,asin,2);图形结果为图7-22。命令4 title功能 给当前轴加上标题。每个axes图形对象可以有一个标题。标题定位于axes的上方正中央。用法 title(string) 在当前坐标轴上方正中央放置字符串string作为标题title(fname) 先执行能返回字符串的函数fname,然后在当前轴上方正中央放置返回的字符串作为标题title(,PropertyName,PropertyValue,) 对由命令
44、title生成的text图形对象的属性进行设置h = title() 返回作为标题的text对象句柄。命令5 text功能 在当前轴中创建text对象。函数text是创建text图形句柄的低级函数。可用该函数在图形中指定的位置上显示字符串。用法 text(x,y,string)在图形中指定的位置(x,y)上显示字符串stringtext(x,y,z,string) 在三维图形空间中的指定位置(x,y,z)上显示字符串stringtext(x,y,z,string.PropertyName,PropertyValue) 对引号中的文字string定位于用坐标轴指定的位置,且对指定的属性进行设置。
45、下表给出文字属性名、含义及属性值。属性名属性说明属性值定义字符串Editing能否对文字进行编辑有效值:on、off缺省值:offInterpretationTeX字符是否可用有效值:tex、none缺省值:texString字符串(包括TeX字符串)有效值:可见字符串放置字符串Extenttext对象的范围(位置与大小)有效值:left, bottom, width, heightHorizontalAlignment文字水平方向的对齐方式有效值:left(文本外框左边对齐,缺省对齐方式)、center(文本外框中间对齐)、right(文本外框右边对齐)缺省值:leftPosition文字范
46、围的位置有效值:x,y,z直角坐标系缺省值:(空矩阵)Rotation文字对象的方位角度有效值:标量(单位为度)缺省值:0Units文字范围与位置的单位有效值:pixels (屏幕上的像素点)、normalized (把屏幕看成一个长、宽为1的矩形)、inches(英寸)、centimeters(厘米)、points (图象点)、data缺省值:dataVerticalAlignment文字垂直方向的对齐方式有效值:top (文本外框顶上对齐)、cap(文本字符顶上对齐)、middle(文本外框中间对齐)、baseline(文本字符底线齐)、bottom(文本外框底线对齐) 缺省值:middle指定文字字体FontAngle设置斜体文字模式有效值:normal(正常字体)、italic(斜体字)、oblique(斜角字)缺省值:normalFontName设置文字字体名称有效值:用户系统支持的字体名或者字符串FixedWidth。缺省值为 HelveticaFontSize文字字体大小有效值:结合字体单位的数值缺省值为:10 pointsFontUnits设置属性FontS
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025-2030中国脂肪烃稀释剂行业市场发展趋势与前景展望战略研究报告
- 2025-2030中国能量球行业市场现状供需分析及投资评估规划分析研究报告
- 2025-2030中国股骨柄行业市场发展趋势与前景展望战略研究报告
- 2025年船载航行数据自动记录仪项目可行性研究报告
- 2025-2030中国缠绕式三角带行业市场发展趋势与前景展望战略研究报告
- 2025-2030中国细胞清洗器行业市场发展趋势与前景展望战略研究报告
- 2025年自动直刀磨刀机项目可行性研究报告
- 2025-2030中国纸巾分配器行业市场发展趋势与前景展望战略研究报告
- 2025-2030中国纤维分选机行业现状动态与前景趋势研究研究报告
- 2025-2030中国系列适配器电缆行业市场发展趋势与前景展望战略研究报告
- ICU非计划性拔管原因分析鱼骨图
- 日本履历书模板
- 银行账户借用合同协议书范本
- 2022-2023年棉花行业洞察报告PPT
- 《工程质进度-质量管理》培训课件
- 精神科症状学演示课件
- 2.抗美援朝课件(共25张PPT)
- 运动特质自信量表
- 《CSS样式表的使用》教学设计
- 养老护理员考试多选题含答案
- 北师大版小学数学六年级总复习知识点汇总
评论
0/150
提交评论