MATLAB如何使用-教程-初步入门大全资料课件

上传人:艳*** 文档编号:242968949 上传时间:2024-09-13 格式:PPT 页数:79 大小:607.50KB
收藏 版权申诉 举报 下载
MATLAB如何使用-教程-初步入门大全资料课件_第1页
第1页 / 共79页
MATLAB如何使用-教程-初步入门大全资料课件_第2页
第2页 / 共79页
MATLAB如何使用-教程-初步入门大全资料课件_第3页
第3页 / 共79页
资源描述:

《MATLAB如何使用-教程-初步入门大全资料课件》由会员分享,可在线阅读,更多相关《MATLAB如何使用-教程-初步入门大全资料课件(79页珍藏版)》请在装配图网上搜索。

1、,单击此处编辑母版样式,,单击此处编辑幻灯片母版样式,,第二层,,第三层,,第四层,,第五层,,,,*,,单击此处编辑母版样式,,单击此处编辑幻灯片母版样式,,第二层,,第三层,,第四层,,第五层,,,,*,MATLAB,快速入门,1,,目 录,,,,MATLAB,基本操作,,,MATLAB,数值计算,,,MATLAB,图形处理,,,MATLAB,编程技巧,,2,,一、,MATLAB,的启动与退出,,1,、,MATLAB,系统的启动,,(,1,)在桌面上双击,MATLAB,快捷方式图标。,,(,2,)在开始菜单中单击,MATLAB\MATLAB6.5,项。,,(,3,)在,MATLAB,安装

2、目录,\MATLAB6p5,中双击,MATLAB,快捷方式。,,(,4,)在,MATLAB,安装目录,\MATLAB6p5\bin\win32,中双击,MATLAB.exe,图标。,,2,、,MATLAB,系统的退出,,(,1,)点击操作桌面的关闭按钮。,,(,2,)执行操作桌面,file\Exit MATLAB,命令。,,(,3,)在命令窗口中输入命令,exit,或,quit,,并回车。,,(,4,)用快捷键,Ctrl+Q,。,§1 MATLAB,的基本操作,,3,二、,MATLAB,窗口,,,,启动,MATLAB,后,将显示包括四个窗口,,命令窗口(,command windows,)

3、,,工作空间窗口(,workspace,),,命令历史窗口(,command history windows,),,当前路径窗口(,current directory,),,4,(,1,)命令窗口,(Command Window),MATLAB,是交互式的语言,输入命令即给出运算结果。而命令窗口则是,MATLAB,的主要交互窗口,用于输入和编辑命令行等信息,显示结果(图形除外)。,,当命令窗口中出现提示符“,>>”,时,表示,MATLAB,已经准备好,可以输入命令、变量或运行函数。提示符总是位于行首。,,在每个指令行输入后要按回车键,才能使指令被,MATLAB,执行。,,,,5,(,2,),工

4、作空间,(Workspace),工作空间用于保存,MATLAB,变量的信息。,,在工作空间可以对变量进行观察、编辑、保存和删除。,,保存在工作空间中的自定义变量,直到使用了“,clear”,命令清除工作空间或关闭了,MATLAB,系统才被清除。,,在命令窗口中键入“,whos”,命令,可以显示出保存在工作空间中的所有变量的名称、大小、数据类型等信息,如果键入“,who”,命令,则只显示变量的名称。,,6,(,3,),命令历史窗口,(Command History),,命令历史窗口记录用户每一次启动,MATLAB,的时间以及在命令窗口运行过的所有指令。,,命令历史窗口中的指令可以被复制到命令窗口

5、重新运行。,,如果要清除掉这些记录,可以选择“,Edit”,菜单中的“,Clear Command History”,项。,,7,(,4,)当前路径窗口,(Current Directory),当前路径窗口也称为当前目录窗口。可以显示或改变当前目录。,,当前目录指的是,MATLAB,运行文件时的工作目录。只有在当前目录或搜索路径下的文件及函数可以被运用或调用,如果没有特殊指明,数据文件也将储存在当前目录下。,,如果要建立自己的工作目录,在运行文件前必须将该文件所在目录设置为当前目录。,,8,三、,MATLAB,的帮助系统,帮助命令,,帮助命令是查询函数语法的最基本的方法,查询信息直接显示在命令

6、窗口。帮助命令有,help,、,lookfor,。,,>>help,函数名,%,显示关于某个具体函数的功能、调用格式、及相关函数,。,,>>help,帮助主题,%,列出指定主题下的函数。例如:,>>help elfun %,列出所有基本函数。,,>>lookfor image %,查找有关图像的函数和命令,,9,四、,MATLAB,的运行方式,1,、命令行运行方式,,在,MATLAB,的应用中,最基本、最简单的应用,就是在命令窗口中,直接输入命令,来实现计算或绘图功能。,,,MATLAB,命令行的一般形式为:,,变量=表达式,A=1+2,,,表达式,1+2,,,,10,命令行运行方式(续),

7、①,使用,MATLAB,最简单的方式是将,MATLAB,的命令窗口看作计算器,通过输入数学算式直接计算。,,,>>1,+,2,+,3,+,4,+,5↙,,ans=,,15,,②,如果在输入的表达式后面跟上分号,“,;,”,,那么运行后就不会马上显示运算的结果,必须键入输出变量后才能显示运算结果。用分号关闭不必要的输出会使程序运行速度成倍甚至成百倍地提高。,,,,,>>1,+,2,+,3,+,4,+,5,; ↙,,则不会马上显示运算结果,要得到运算结果,必须,,,>>ans↙,,,则显示结果为,,,ans=,,15,,11,命令行运行方式(续),③,如果在表达式后面跟上逗号“,”或什么都不跟,运

8、行后会马上显示该表达式的运算结果。,,④如果一个表达式很长,可以用续行号“,…”,将其延续到下一行。,,>>1+2+3+4+5+…↙ %,注意加号写在本行。,,,6+7+8+9+10↙,,,则输出结果,,,ans=,,55,,,,12,⑤,在一行中也可以写几个语句,它们之间用逗号“,”或分号“;”隔开。,,,>>A=[1,2,3.3,sin(4)],X=1966/310+1↙,,,则输出结果,,,A,=,,,1.0000 2.0000 3.3000, -0.7568,,X=,,7.3419,。,命令行运行方式(续),,13,2,、,m,文件运行方式,,所谓,m,文件,就是用,MATLAB,

9、语言编写的、可以在,MATLAB,中运行的程序。,它是以普通文本格式存放的,故可以用任何文本编辑软件进行编辑。,MATLAB,提供的,m,文件编辑器就是程序编辑器。,,在,File,菜单中选择,NEW,,再选择,M-file,,或点击新建图标,就可以调出,m,文件编辑器,用户可以用此编辑器编写,m,文件。,,14,(,1,)命令文件,,如果要输入较多的命令,或者要经常对某些命令进行重复的输入,则可以将这些命令按执行顺序存放在一个,m,文件中,以后只要在,MATLAB,的命令窗口中输入该文件的文件名,系统就会调入该文件并执行其中的全部命令。这种形式就是,MATLAB,的命令文件。,,15,命令文

10、件(续),求满足,1+2+3+…n<100,的最大正整数,n,的,MATLAB,程序为:,,sum=0;n=0; %,赋初始值,,while sum<100 %,判断当前的和是否小于,100,,n=n+1; %,如果没有超过,100,,则对,n,加,1,,sum=sum+n; %,计算最新的和,,end,,sum=sum-n; %,当循环结束时有,sum>=100,,故应,,对,sum,减,n,,n=n-1; %,当循环结束时有,sum>=100,,故

11、,,应对,n,减,1,,n,sum %,显示最大正整数,n,以及和,sum,,,16,命令文件(续),将上述程序存入文件,fl.m,,然后在命令窗口键入,,>>fl↙,,,显示结果为,,n=,,13,,sum=,,91,,,指出:,,程序中由符号“,%”,开始的文字都是注释文字,用来对程序或程序行行进行注释说明,符号“,%”,称为注释符,,MATLAB,在执行时将忽略“,%”,后的内容。,,17,(,2,)函数文件,函数文件是另一类,m,文件,可以像库函数一样方便地被调用,,MATLAB,提供的许多工具箱,是由函数文件组成的。,,对于某一类特殊问题,

12、用户可以建立系统的函数文件,形成专用工具箱。,,函数文件的第一行有特殊的要求,它必须遵循如下的形式:,,,function<,因变量,>=<,函数名,>(<,自变量,>),,其他各行都是程序运行语句,没有特别要求。,,函数文件的文件名必须是,<,函数名,>.m,。,,18,函数文件(续),实现符号函数,,,,,运算功能的函数,m,文件为:,,function y=sgn(x) %,这是一个定义符号函数,,,y=sgn(x),的函数文件。,,if x<0,,y1=-1;,,elseif x==0,,y1=0;,,else,,y1=1;,,end,,y=y1;,,,19,函数文件(续

13、),,将上述程序存为文件,sgn.m,,便可以将其作为普通的,MATLAB,函数来使用:,,>>x=4/3*pi; ↙,,y=3*sgn(sin(x)) ↙,,显示结果为,:,,y=,,-3,,,20,五、,MATLAB,的常用命令,,MATLAB,可以通过菜单对工作着的窗口进行操作,也可以通过键盘在命令窗口输入命令进行操作,下面给出几个常用的通用命令。,,quit,关闭,MATLAB,,exit,关闭,MATLAB,,clc,清除,MATLAB,命令窗口中的所有显示内容,,clear,清除工作空间中保存的所有变量,,其他命令可以在学习应用中逐步熟悉。,,21,六、,MATLAB,的基本运算,

14、运算,数学表达式,MATLAB,运算符,MATLAB,表达式,示例,加,a+b,+,a+b,1+2,减,a-b,-,a-b,5-3,乘,a×b,*,a*b,2*3,除,a÷ b,/(,右除,),或,\(,左除,),,a/b,或,b\a,6/2,或,2\6,幂,a^b,^,a^b,2^3,指出:右除相当于通常的除法。,,,22,七、,MATLAB,的变量与函数,1,、变量,,变量就是在程序的运行过程中,其数值可以变化的量(数据),它可以代表一个或若干个内存单元(变量的地址)中的数据。为了对所有的变量所对应的存储单元进行访问,需要给变量命名。,,MATLAB,变量命名的规则,是:,,①以,字母,开

15、头,后面可以跟字母、数字或下划线。,,②不超过,31,个字符。,,③字符间,不可以,留空格。,,④,区分大小写,。,,23,MATLAB,的变量与函数(续),系统变量,,变量名,意义,ans,用于存储计算结果的默认变量,pi,圆周率,π,inf(Inf),无穷大∞,例如,1/0,eps,计算机的最小数,和,1,相加产生比,1,大的数,在,pc,机上为,2,-,52,。,NaN(nan),不定量,如,0/0,i,或,j,虚数单位,,i=j=sqrt(-1),,24,2,、函数,数学函数,,函数名,含义,函数名,含义,abs(x),x,的绝对值,atant(x),x,的反正切,sqrt(x),x,

16、的平方根,cot(x),x,的余切,exp(x),e,的,x,次方,acot(x),x,的反余切,sin(x),x,的正弦,log(x),x,的自然对数,cos(x),x,的余弦,log10(x),x,的常用对数,asin(x),x,的反正弦,sinh(x),双曲正弦,acos(x),x,的反余弦,cosh(x),双曲余弦,tan(x),x,的正切,,,,25,函数(续),机器函数,,,pause,程序将暂时停在该函数所在位置,击任意键程序继续执行,,,echo on,在命令窗口显示正在执行的程序指令,,,cputime,给出,MATLAB,所耗用的总机器时间,,,clock,给出日期及当前时

17、间,,26,§2 MATLAB,的数值计算,MATLAB,运算的基本数据对象是,矩阵,,标量可以看作是,1×1,的矩阵,向量可以看作是,1×n,或,n×1,的矩阵。因此,可以说,MATLAB,的数据结构就是矩阵,以,矩阵运算,为代表的基本运算功能一直是,MATLAB,引以为自豪的核心与基础。,,27,一、矩阵的创建,矩阵是线性代数的基本运算单元。,,通常矩阵是指含有,m,行,n,列数值的矩形结构。矩阵中的元素可以是实数也可以是复数,由此可以将矩阵划分为实矩阵和复矩阵。,,MATLAB,支持线性代数所定义的全部矩阵运算。,,在,MATLAB,中,创建矩阵,应遵循以下,原则,:,,①矩阵的元素

18、必须在方括号,“,[ ],”,中。,,②矩阵的同行元素之间用,空格或逗号,“,,,”,分隔。,,③矩阵的行与行之间用分号,“,;,”,或回车符分隔。,,④矩阵的,尺寸不必预先定义,。,,⑤矩阵元素可以是数值、变量、表达式或函数。如果矩阵元素是表达式,系统将自动计算出结果。,,28,矩阵的创建(续),1,、直接输入法,-在命令窗口按规则输入方式创建矩阵,,例,1.,在命令窗口创建简单的数值矩阵。,,,>>A=[1 3 2;3 1 0;2 1 5],,,回车后在命令窗口显示如下结果,,,A =,,1 3 2,,3 1 0,,2 1 5,,,例,2.,

19、在命令窗口创建带运算表达式的矩阵,不显示结果。,,,>>y=[sin(pi/3),cos(pi/6);log(20),exp(2)];,,,输入“,y”,回车,在命令窗口显示出来。,,,>>y↙,,,显示出的结果为,,,y =,,0.8660 0.8660,,2.9957 7.3891,,,29,矩阵的创建(续),2,、通过,m,文件创建矩阵,-将矩阵建立为,m,文件,,先将矩阵按创建原则写入一个,m,文件中,在,MATLAB,命令窗口或程序中直接运行该,m,文件(输入该,m,文件名),即可将矩阵调入工作空间。,,3,、通过函数创建矩阵,函数,功能,eye(n),产生,n,阶单位矩

20、阵,ones(m,n),产生,m×n,矩阵,元素都是,“,1,”,zeros(m,n),产生,m×n,矩阵,元素都是,“,0,”,(,零矩阵,),[],产生空矩阵,,30,矩阵的创建(续),4,、其他构造矩阵的方法,-冒号法,,[,1,]冒号法构造向量,,冒号表达式的一般格式为:,,向量名=初值:步长:终值。,,例,4.,在窗口输入,,,>> x=0:0.5:2,,回车后显示,,x =,,0 0.5000 1.0000 1.5000 2.0000,。,,例,5.,在命令窗口输入,,>> x=2:-0.5:0,,回车后显示,,x =,,2.0000 1.5000

21、 1.0000 0.5000 0,,31,矩阵的创建(续),指出:,,①步长可以,省略,,省略步长,则步长为,1,。,,②步长可以为,负,,此时初值大于终值。,,③向量的元素比较,多,而又有增减,规律,时,这种方法非常便利。,,④冒号法表示向量时,向量的全体成员是从初值开始,以步长为增量,直到不超过终值的所有元素构成的序列。,,⑤冒号法的应用可以避免使用循环,提高程序运行速度。,,32,矩阵的创建(续),[,2,]冒号法构造矩阵,,一般格式为:,,A(:,j):,表示矩阵,A,的第,j,列;,,A(i,:):,表示矩阵,A,的第,i,行。,,例,6.,建立矩阵,,。,,

22、,,解:,>> A(1,:)=1:5 %,设置矩阵的第,1,行,,A =,,1 2 3 4 5,,,33,矩阵的创建(续),>> A(2,:)=6:10 %,设置矩阵的第,2,行,,A =,,1 2 3 4 5,,6 7 8 9 10,,>> A(3,:)=11:15 %,设置矩阵的第,3,行,设置完成,,A =,,1 2 3 4 5,,6 7 8 9 10,,11 12 13 14 15,

23、,,34,二、矩阵的运算,,MATLAB,对于矩阵与矩阵之间的运算的处理方法与线性代数中的相同,,,,,,,,,,,运算,运算符,表达式,加,+,A+B,减,-,A-B,乘,*,A*B,除,/(,右除,),或,\(,左除,),,A/B,或,B\A,幂,^,A^p,转置,‘(,单引号,),A’,,35,矩阵的运算(续),例,8.,求下面方程组的根。,,,,解:解线性方程组,可以使用矩阵的左除“,\”,,即,X,=,A\B,。,,,>>A=[2,1,-3;3,-2,2;5,-3,-1];,,>>B=[5;5;16]; %,列向量,,,>>X=A\B,,X =,,1,,-3,,-2,,,,36,矩阵

24、的运算(续),指出:,,①线性方程组,A*X,=,B,有两种解法:,X=A\B,或,X=inv(A)*B,,但一般用第一种解法,在,MATLAB,中,第二种解法所用时间是第一种解法的,50,倍。,,②可以看出,同样解线性方程组,不同的算法的效率是有极大差距的,可见优化和选择算法是非常重要的。,,③求逆运算,inv(A),是重要的代数运算。,,,,37,三、矩阵的操作,1,、矩阵的大小测度,,,Size,函数用来测试矩阵的大小,对于 矩阵,A,,,size(A),返回一个行向量,它包含了,矩阵的行数,m,和列数,n,。如果专门显示行数和列数,则可以采用如下格式:,,,。,,例,

25、9.,已知矩阵,,,,,,,,求矩阵的大小。,,,,,,38,矩阵的操作(续),解:,,>> A=[1 1 1 1 1;1 2 3 4 5;1 3 6 10 15],%设,A,为已知矩阵,,A =,,1 1 1 1 1,,1 2 3 4 5,,1 3 6 10 15,,>> d=size(A),%测试矩阵,A,的大小,,d =,,3 5,,>> d1=size(A,1),%测试矩阵的行数,,d1 =,,3,,>> d2=size(A,2),%测试矩阵的列数,,d2 =,,5,,39,矩阵的操作(

26、续),2,、矩阵的元素操作,,例,10.,已知矩阵,,,,,,,写出矩阵的元素,A(2,3),,将,A(3,5),改为-,1,。,,解:,,>> A=[1 1 1 1 1;1 2 3 4 5;1 3 6 10 15],,A =,,1 1 1 1 1,,1 2 3 4 5,,1 3 6 10 15,,,40,矩阵的操作(续),>> A(2,3),,ans =,,3,,>> A(3,5)=-1,,A =,,1 1 1 1 1,,1 2 3 4

27、5,,1 3 6 10 -1,,,41,矩阵的操作(续),3,、矩阵块的操作,,利用冒号表达式对矩阵进行拆分、提取子矩阵是矩阵操作的重要方面。提取的规则是,,①,A(:,j),表示取矩阵,A,的第,j,列的全部元素;,,②,A(i,:),表示取矩阵,A,的第,i,行的全部元素;,,③,A(i,j),表示取矩阵,A,的第,i,行第,j,列交叉位置的元素;,,④,A(i:i+m,:),表示取矩阵,A,的第,i,~,i+m,行的全部元素;,,⑤,A(:,k:k+n),表示取矩阵,A,的第,k,~,k+n,列的全部元素;,,⑥,A(i:i+m,k:k+n),表示取矩阵,A,

28、的第,i,~,i+m,行内并在第,k,~,k+n,列中的全部元素。,,42,矩阵的操作(续),例,12.,拆分矩阵的例子。,,>> A=[1 1 1 1 1;1 2 3 4 5;1 3 6 10 15],,A =,,1 1 1 1 1,,1 2 3 4 5,,1 3 6 10 15,,>> A(2,3),,ans =,,3,,>> A(3,5)=-1,,A =,,1 1 1 1 1,,1 2 3 4 5,,1 3 6

29、10 -1,,43,矩阵的操作(续),>> A=[1,2,3,4,5;6,7,8,9,10;11,12,13,14,15;16,17,18,19,20],,A =,,1 2 3 4 5,,6 7 8 9 10,,11 12 13 14 15,,16 17 18 19 20,,>> A(1,:),,ans =,,1 2 3 4 5,,44,矩阵的操作(续),>> A(:,2:4),,ans =,,2 3 4,,7

30、 8 9,,12 13 14,,17 18 19,,>> A(2:3,4:5),,ans =,,9 10,,14 15,,>> A(2:3,1:2:5),,ans =,,6 8 10,,11 13 15,,45,矩阵的操作(续),例,13.,组合矩阵的例子。,,>> A=[1,2;3,4],,A =,,1 2,,3 4,,>> B=[2,3;4,5],,B =,,2 3,,4 5,,>> [A,B],,ans =,,1 2 2 3,,3 4

31、4 5,,46,矩阵的操作(续),>> [A;B],,ans =,,1 2,,3 4,,2 3,,4 5,,>> [A;6,7],,ans =,,1 2,,3 4,,6 7,,47,矩阵的操作(续),①,冒号表达式,是,MATLAB,中非常重要的、应用非常广泛、也非常灵活的工具。,,②利用冒号表达式比利用循环语句赋值解决同一问题要快得多,所以实际编程时一般应当,尽量采用冒号表达式而不是用循环,。,,,48,§3 MATLAB,的图形处理,,,49,MATLAB,的图形处理,(,续),>> [x,y,z]=sphere(30);,,

32、>> surf(x,y,z),box,,50,二维图形的绘制,一、二维图形的绘制,,1,、数据绘图命令-,plot,,①plot(y),当,y,为向量时,,以,y,的分量为纵坐标,以元素序号为横坐标,,用直线依次连接数据点,绘制曲线。若,y,为实数矩阵,按列绘制每一列所对应的曲线,图中曲线数等于矩阵的列数。,,②,plot(x,y),若,y,和,x,为同维向量,,以,x,为横坐标,以,y,为纵坐标,绘制连线图。若,x,是向量,,y,是行数或列数与,x,的长度相等的矩阵,则绘制多条不同色彩的连线图,,x,被作为这些曲线的共同坐标。若,x,和,y,是同型的矩阵,则以,x,和,y,的对应列元素为横纵

33、坐标分别绘制曲线,曲线条数等于矩阵的列数。,,③,plot(x,y1,x,y2,…),以,公共的,x,元素为横坐标,,以,y1,,,y2,,,y3,,,…,元素为纵坐标值绘制多条曲线。,,51,二维图形的绘制(续),例,1,.以向量,y=(1,2,5,4.5,3,6,1),的各个分量为纵坐标,分量序号为横坐标绘制顺序连接线。,,解:输入命令,,>> y=[1 2 5 4.5 3 6 1];,,>> plot(y),,52,二维图形的绘制(续),,,53,二维图形,(,续,),例,2.,画出一条正弦曲线和一条余弦曲线。,,,>>x=0:pi/10:2*pi; %,构造向量,,,>>y1=si

34、n(x); %,构造对应的,y1,坐标,,,>>y2=cos(x); %,构造对应的,y2,坐标,,,>>plot(x,y1,x,y2) %,画出一个以,x,为横坐标,,y1,,,,,y2,为纵坐标的图形,,,指出:,,①构造向量采用了所谓的冒号法,格式为,,向量名=初值,:,步长:终值,%,步长为,1,时可以省略。,,②,plot,是针对向量或矩阵的列来绘制曲线的,也就是说,使用,plot,之前必须首先定义好曲线上每一点的,x,坐标和,y,坐标。,,③在上述的格式中,,x,和,y,都可以是表达式。,,④如果自变量的间隔取得比较大,光滑的曲线就会显示

35、出折线的本来面貌。,,54,二维图形,(,续,),,55,二维图形绘制,(,续),MATLAB,绘制的其它图像的例子,:,,例,5.,某次考试学生成绩优秀的占,8%,,良好的占,20%,,中等的占,36%,,及格的占,24%,,不及格的占,12%,。分别用饼图和条形图表示。,,解:,,>> x=[8 20 36 24 12];,,>> subplot(221);pie(x,[1 0 0 0 1]);,,>> title(',饼图,');,,>> subplot(222);bar(x,'grpup');,,>> title(',垂直条形图,');,,>> subplot(223);bar(x,'

36、stack');,,>> title(',累加值为纵坐标的垂直条形图,');,,>> subplot(224);barh(x,'group');,,>> title(',水平条形图,');,,56,,fplot(,续),,57,2,、绘图控制命令,(,1,)曲线控制命令,,,在使用,plot,等命令绘制曲线时可以指定曲线的颜色、线型和数据点图标。基本的调用格式为,,,plot(x,y,'color line-style marker'),,,颜色控制符表,字符,颜色,字符,颜色,b,蓝色,m,紫红色,c,青色,r,红色,g,绿色,w,白色,k,黑色,y,黄色,,58,绘图控制,(,续,),线型

37、控制符表,线型格式,实线(默认),点线,点划线,虚线,符号,-,:,-.,--,,59,绘图控制,(,续,),数据点标记控制符表,标记符号,数据点形式,标记符号,数据点形式,.,实心圆点,>,大于号,o(,字母,),空心圆点,<,小于号,x,叉号,s,正方形,+,加号,d,菱形,*,星号,h,六角星,v,向下的三角形,p,五角星,^,向上的三角形,,,,60,绘图控制,(,续,),指出:,,①颜色、线型、标记三种属性的符号,必须放在同一个字符串内。,,②属性的先后,顺序没有关系,,可以只指定一两个属性,也可以全部缺省,但同种属性不能同时指定两个。,,③,颜色缺省为蓝色,。,,④点、线标识符缺省

38、为,实线,。,,⑤属性间,不用间隔,。,,61,绘图控制,(,续,),例,6.,用红色、点连线、叉号画出正弦曲线。,,,>>x=0:0.2:8;,,>>y=sin(x);,,>>plot(x,y,'r:x'),,,62,绘图控制,(,续,),,63,(,2,)图形的标注命令,图形标注函数,函数,意义,title(,‘…’,),给图形添加标题,xlabel(,‘…’,),标记横坐标,ylabel(,‘…’,),标记纵坐标,text(x,y,,’…’,),在,x,,,y,所定义的位置标注,gtext(,’…’,),该命令提示在鼠标指定位置(光标显示为,“,+,”,标注,),axis(xmin xm

39、ax ymin ymax),指定显示范围,Grid on(/of),添加或取消网格线,,64,图形的标注,(,续,),例,7.,给例,2,的图形加入网格和标注。,(f2),,,>>x=0:pi/10:2*pi;,,>>y1=sin(x);,,>>y2=cos(x);,,>>plot(x,y1,x,y2),,>>grid on %,添加网格,,,>>xlabel(‘x,轴’,) %,横坐标名,,,>>ylabel(‘y,轴’,) %,纵坐标名,,

40、,>>title(‘,正弦函数和余弦函数曲线’,) %,标题,,,>>text(1.5,0.3,’cos(x)’) %,指定位置标注,,,>>gtext(‘sin(x)’) %,用鼠标选择位置标注,,,>>axis([0 2*pi -1.2 1.2]) %,设置坐标轴的最大最,,小值,,65,图形的标注,(,续,),,66,(,3,)图形的比较显示命令,,默认的情况下,,MATLAB,每一次使用,plot,函数进行绘图,都将清除原有的图形,但有时候我们希望后面绘制的图形能和前面所绘制的图形进行比较。此时我

41、们有两种方法,一是采用,hold on(/off),命令,,,在同一个图形窗口中绘制新的图形叠加在原有的图形上。二是采用,subplot(n,m,k),命令,将图形窗口分割成几个小窗口,在每个窗口中画出一个图形。,,,,,①,hold on(/off),保持绘图命令,,②,subplot(n,m,k),将图形窗口分成,n,行,m,列个格子,在,,第,k,个格子绘图,格子按从上到下依行计数。,,67,图形的比较显示(续),例,8.,在同一个窗口中,使用两次,plot,函数,,绘制两条曲线。,,,>>x=0:0.2:12;,,>>plot(x,sin(x),’-’),,>>hold on,,>>p

42、lot(x,cos(x),’:’),,68,图形的比较显示(续),,,69,图形的比较显示(续),例,9,.把当前窗口分割成四个区域,绘制四条函数曲,,线。,(f3),,,,>>x=0:0.05:8;,,>>y1=2*sin(x);,,>>y2=2*cos(x);,,>>y3=sin(2*x);,,>>y4=cos(2*x);,,>>subplot(2,2,1);,,>>plot(x,y1);,,>>title(‘2sinx’),,,,70,图形的比较显示(续),,>>subplot(2,2,2);,,>>plot(x,y2);,,>>title(‘2cosx’),,>>subplot(2,2

43、,3);,,>>plot(x,y3);,,>>title(‘sin2x’),,>>subplot(2,2,4);,,>>plot(x,y4);,,>>title(‘cos2x’),,,71,图形的比较显示(续),,,72,二、三维图形的绘制,1,、,和二维图形相对应,,MATLAB,提供了一个三维曲 线绘制命令,plot3,,它的应用和,plot,类似,只是多了,z,方向的数据。,,例,10.,绘制一条三维曲线。,,,>>clear,,>>clc,,>>z=0:pi/50:10*pi;,,>>x=sin(z);,,>>y=cos(z);,,>>plot3(x,y,z),,,73,三维图形(续)

44、,,,74,三维图形(续),2,、绘制三维曲面的命令则有,mesh(x,y,z),或,surf(x,y,z),。,它们的区别在于,前者绘制出的是一个用网格近似的曲面,后者绘制出的是一个真正表面图。,,例,11.,绘制多峰函数图。,,,>>z=peaks(40);,,>>mesh(z);,,>>surf(z);,,,peaks,称为多峰函数,常用于三维曲面的演示。,,75,三维图形(续),,,76,三维图形(续),,,77,1,、及时,清空工作空间,,,在每一个程序的开头加上,clear,命令,以清空内存中的自定义变量。,,2,、,注释,,,为了增强程序的可读性,程序中要注意编写注释。,,,3,

45、、优化程序,,[,1,]直接使用矩阵与向量,,避免使用循环,。,,[,2,]不显示不必要的中间结果。,,[,3,]对大型矩阵预先定义维数。,,[,4,]优先使用内部函数。,,[,5,]充分利用其他高级语言。,,[,6,]设置,断点,调试。,,[,7,]测试程序执行时间,,,tic,用于启动秒表,,toc,用于停止秒表。,,,tic,和,toc,返回的是变量,elapsed_time,。,,§4 MATLAB,编程技巧,,78,MATLAB,编程技巧,例,1.,建立一个,100×100,的魔方矩阵,并测定运行时间。,,解:,>> tic %,开始计时,,>> A=magic(100); %,运行程序,,magic,是魔方矩阵函数。,,>> toc %,结束计时,显示所耗时间。,,在命令窗口观察运行结果为。,,elapsed_time =,,109.0940,,4,、注意,格式,,5,、利用,帮助,和演示,,6,、特别提示,,①,自定义变量和函数的名称,不能和,MATLAB,命令及内部函数重名。,,②,MATLAB,不支持汉字,,汉字不能出现在变量名和函数名中。,,③,MATLAB,对,大小写敏感,。,,,79,

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

相关资源

更多
正为您匹配相似的精品文档
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!