matlab画最新课件

上传人:阳*** 文档编号:83326560 上传时间:2022-05-01 格式:PPT 页数:61 大小:303.50KB
收藏 版权申诉 举报 下载
matlab画最新课件_第1页
第1页 / 共61页
matlab画最新课件_第2页
第2页 / 共61页
matlab画最新课件_第3页
第3页 / 共61页
资源描述:

《matlab画最新课件》由会员分享,可在线阅读,更多相关《matlab画最新课件(61页珍藏版)》请在装配图网上搜索。

1、matlab画PPT课件 (2)二维图形二维图形绘制二维曲线的基本函数绘制二维曲线的基本函数1. plot函数的基本用法函数的基本用法plot函数的基本调用格式为:函数的基本调用格式为:plot(x,y) 其中其中x和和y为长度相同的向量,分别用于存储为长度相同的向量,分别用于存储x坐标和坐标和y坐标数据。坐标数据。matlab画PPT课件 (2) 例例1 在在0X2 区间内,绘制曲线区间内,绘制曲线y=2e-0.5xsin(2x)。 程序如下:程序如下:x=0:pi/100:2*pi;y=2*exp(-0.5*x).*sin(2*pi*x);plot(x,y)testmatlab画PPT课件

2、 (2) 例例 绘制参数方程曲线。绘制参数方程曲线。X=tcos(3t) Y=tsin(t2)t=-pi:pi/100:pi;x=t.*cos(3*t);y=t.*sin(t).*sin(t);plot(x,y); matlab画PPT课件 (2) 说明:说明:(1)当)当x,y是同维矩阵时,则以是同维矩阵时,则以x,y对应列元素为对应列元素为横、纵坐标分别绘制曲线,曲线条数等于矩阵横、纵坐标分别绘制曲线,曲线条数等于矩阵的列数。的列数。(2)当)当x是向量,是向量,y是有一维与是有一维与x同维的矩阵时,同维的矩阵时,则绘制出多根不同色彩的曲线。曲线条数等于则绘制出多根不同色彩的曲线。曲线条数

3、等于y矩阵的另一维数,矩阵的另一维数,x被作为这些曲线共同的横被作为这些曲线共同的横坐标。坐标。(3)plot函数最简单的调用格式是只包含一个输函数最简单的调用格式是只包含一个输入参数:入参数:plot(x)。matlab画PPT课件 (2) 2含多个输入参数的含多个输入参数的plot函数函数含多个输入参数的含多个输入参数的plot函数调用格式为:函数调用格式为:plot(x1,y1,x2,y2,xn,yn)3含选项的含选项的plot函数函数含选项的含选项的plot函数调用格式为:函数调用格式为:plot(x1,y1,选项选项1,x2,y2, 选项选项2,xn,yn,选项选项n)matlab画

4、PPT课件 (2) 例例2 用不同线型和颜色在同一坐标内绘制曲线用不同线型和颜色在同一坐标内绘制曲线y=2e-0.5xsin(2x)及其包络线。及其包络线。x=(0:pi/100:2*pi);y1=2*exp(-0.5*x)*1,-1;y2=2*exp(-0.5*x).*sin(2*pi*x);x1=(0:12)/2;y3=2*exp(-0.5*x1).*sin(2*pi*x1);plot(x,y1,g:,x,y2,b-,x1,y3,rp);matlab画PPT课件 (2) 4双纵坐标函数双纵坐标函数plotyy plotyy函数是函数是MATLAB 5.X新增的函数。新增的函数。它能把函数值

5、具有不同量纲、不同数量它能把函数值具有不同量纲、不同数量级的两个函数绘制在同一坐标中。调用级的两个函数绘制在同一坐标中。调用格式为:格式为: plotyy(x1,y1,x2,y2) 其中其中x1-y1对应一条曲线,对应一条曲线,x2-y2对应另一对应另一条曲线。横坐标的标度相同,纵坐标有条曲线。横坐标的标度相同,纵坐标有两个,左纵坐标用于两个,左纵坐标用于x1-y1数据对,右纵数据对,右纵坐标用于坐标用于x2-y2数据对。数据对。matlab画PPT课件 (2) 例例3 用不同标度在同一坐标内绘制曲线用不同标度在同一坐标内绘制曲线y1=e-0.5xsin(2x)及曲线及曲线y2=1.5e-0.

6、1xsin(x)。 x1=0:pi/100:2*pi;x2=0:pi/100:3*pi;y1=exp(-0.5*x1).*sin(2*pi*x1);y2=1.5*exp(-0.1*x2).*sin(x2);plotyy(x1,y1,x2,y2);matlab画PPT课件 (2) 绘制图形的辅助操作绘制图形的辅助操作 1. 图形标注图形标注 有关图形标注函数的调用格式为:有关图形标注函数的调用格式为: title(图形名称图形名称) xlabel(x轴说明轴说明) ylabel(y轴说明轴说明) text(x,y,图形说明图形说明) legend(图例图例1,图例图例2,)matlab画PPT课

7、件 (2) 2. 坐标控制坐标控制函数的调用格式为:函数的调用格式为:axis(xmin xmax ymin ymax zmin zmax)axis函数功能丰富,常用的用法还有:函数功能丰富,常用的用法还有:axis equal 纵、横坐标轴采用等长刻度纵、横坐标轴采用等长刻度axis square 产生正方形坐标系产生正方形坐标系(缺省为矩形缺省为矩形)axis auto 使用缺省设置使用缺省设置axis off 取消坐标轴取消坐标轴axis on 显示坐标轴显示坐标轴grid on/off命令控制是画还是不画网格线,不带命令控制是画还是不画网格线,不带参数的参数的grid命令在两种状态之间

8、进行切换。命令在两种状态之间进行切换。box on/off命令控制是加还是不加边框线,不带命令控制是加还是不加边框线,不带参数的参数的box命令在两种状态之间进行切换。命令在两种状态之间进行切换。matlab画PPT课件 (2) 3. 图形保持图形保持 一般情况下,绘图命令每执行一次就刷新一般情况下,绘图命令每执行一次就刷新当前图形窗口,图形窗口原有图形将不复当前图形窗口,图形窗口原有图形将不复存在。若希望在已存在的图形上再继续添存在。若希望在已存在的图形上再继续添加新的图形,可使用图形保持命令加新的图形,可使用图形保持命令hold。hold on/off命令控制是保持原有图形还是刷命令控制是

9、保持原有图形还是刷新原有图形,不带参数的新原有图形,不带参数的hold命令在两种命令在两种状态之间进行切换。状态之间进行切换。 matlab画PPT课件 (2) 例例4 用图形保持功能在同一坐标内绘制曲线用图形保持功能在同一坐标内绘制曲线y=2e-0.5xsin(2x)及其包络线。及其包络线。x=(0:pi/100:2*pi);y1=2*exp(-0.5*x)*1,-1;y2=2*exp(-0.5*x).*sin(2*pi*x);plot(x,y1,b:);axis(0,2*pi,-2,2); hold on; plot(x,y2,k);legend(包络线包络线,包络线包络线,曲线曲线y);

10、 hold off; gridmatlab画PPT课件 (2) 4. 图形窗口的分割图形窗口的分割 subplot函数的调用格式为:函数的调用格式为: subplot(m,n,p) 例例5 在一个图形窗口中以子图在一个图形窗口中以子图形式同时绘制正弦、余弦、正切、形式同时绘制正弦、余弦、正切、余切曲线。余切曲线。 matlab画PPT课件 (2) x=linspace(0,2*pi,60); y=sin(x);z=cos(x); t=sin(x)./(cos(x)+eps); ct=cos(x)./(sin(x)+eps); subplot(2,2,1); plot(x,y);title(si

11、n(x);axis (0,2*pi,-1,1); subplot(2,2,2); plot(x,z);title(cos(x);axis (0,2*pi,1,1); subplot(2,2,3); plot(x,t);title(tangent(x);axis (0,2*pi,-40,40); subplot(2,2,4); plot(x,ct);title(cotangent(x);axis (0,2*pi,-40,40);matlab画PPT课件 (2) 绘制二维图形的其他函数绘制二维图形的其他函数1. 其他形式的线性直角坐标图其他形式的线性直角坐标图在线性直角坐标系中,其他形式的图形有在

12、线性直角坐标系中,其他形式的图形有条形图、阶梯图、杆图和填充图等,所条形图、阶梯图、杆图和填充图等,所采用的函数分别是:采用的函数分别是:bar(x,y,选项选项)stairs(x,y,选项选项)stem(x,y,选项选项)fill(x1,y1,选项选项1,x2,y2,选项选项2,)matlab画PPT课件 (2) 例例6 分别以条形图、填充图、阶梯图和杆图形分别以条形图、填充图、阶梯图和杆图形式绘制曲线式绘制曲线y=2e-0.5x。 x=0:0.35:7; y=2*exp(-0.5*x); subplot(2,2,1);bar(x,y,g); title(bar(x,y,g);axis(0,

13、7,0,2); subplot(2,2,2);fill(x,y,r); title(fill(x,y,r);axis(0,7,0,2); subplot(2,2,3);stairs(x,y,b); title(stairs(x,y,b);axis(0,7,0,2); subplot(2,2,4);stem(x,y,k); title(stem(x,y,k);axis(0,7,0,2);matlab画PPT课件 (2) 2极坐标图极坐标图polar函数用来绘制极坐标图,其调用格式为:函数用来绘制极坐标图,其调用格式为:polar(theta,rho,选项选项)其中其中theta为极坐标极角,为极

14、坐标极角,rho为极坐标矢径,选为极坐标矢径,选项的内容与项的内容与plot函数相似。函数相似。例例7 绘制绘制=sin(2)cos(2)的极坐标图。的极坐标图。 程序如下:程序如下: theta=0:0.01:2*pi; rho=sin(2*theta).*cos(2*theta); polar(theta,rho,k); matlab画PPT课件 (2) 3对数坐标图形对数坐标图形 MATLAB提供了绘制对数和半对数坐标曲线提供了绘制对数和半对数坐标曲线的函数,调用格式为:的函数,调用格式为: semilogx(x1,y1,选项选项1,x2,y2,选项选项2,) semilogy(x1,y

15、1,选项选项1,x2,y2,选项选项2,) loglog(x1,y1,选项选项1,x2,y2,选项选项2,)matlab画PPT课件 (2) 例例8 绘制绘制y=10 x2的对数坐标图并与直角线性坐标图的对数坐标图并与直角线性坐标图进行比较。进行比较。 程序如下:程序如下: x=0:0.1:10; y=10*x.*x; subplot(2,2,1);plot(x,y);title(plot(x,y);grid on; subplot(2,2,2);semilogx(x,y);title(semilogx(x,y); grid on; subplot(2,2,3);semilogy(x,y);t

16、itle(semilogy(x,y); grid on; subplot(2,2,4);loglog(x,y);title(loglog(x,y);grid on; matlab画PPT课件 (2) 4. 对函数自适应采样的绘图函数对函数自适应采样的绘图函数fplot函数的调用格式为:函数的调用格式为: fplot(fname,lims,tol,选项选项)例例9 用用fplot函数绘制函数绘制f(x)=cos(tan(x)的曲的曲线。线。 先建立函数文件先建立函数文件myf.m: function y=myf(x) y=cos(tan(pi*x); 再用再用fplot函数绘制函数绘制myf.m

17、函数的曲线:函数的曲线: fplot(myf,-0.4,1.4,1e-4)matlab画PPT课件 (2) 5. 其他形式的图形其他形式的图形MATLAB提供的绘图函数还有很多,例如,用来表提供的绘图函数还有很多,例如,用来表示各元素占总和的百分比的饼图、复数的相量图示各元素占总和的百分比的饼图、复数的相量图等等。等等。例例10 绘制图形:绘制图形:(1)某次考试优秀、良好、中等、及格、不及格的人数分别某次考试优秀、良好、中等、及格、不及格的人数分别为:为:7,17,23,19,5,试用饼图作成绩统计分析。,试用饼图作成绩统计分析。(2)绘制复数的相量图:绘制复数的相量图:3+2i、4.5-i

18、和和-1.5+5i。程序如下:程序如下:subplot(1,2,1);pie(7,17,23,19,5);title(饼图饼图);legend(优秀优秀,良好良好,中等中等,及格及格,不及格不及格);subplot(1,2,2);compass(3+2i,4.5-i,-1.5+5i);title(相量图相量图);matlab画PPT课件 (2)三维图形三维图形绘制三维曲线的基本函数绘制三维曲线的基本函数 plot3函数与函数与plot函数用法十分相似,其调用格式为:函数用法十分相似,其调用格式为: plot3(x1,y1,z1,选项选项1,x2,y2,z2,选项选项2,xn,yn,zn,选项选

19、项n) 例例11 绘制空间曲线。绘制空间曲线。 程序如下:程序如下: t=0:pi/50:2*pi; x=8*cos(t); y=4*sqrt(2)*sin(t); z=-4*sqrt(2)*sin(t); plot3(x,y,z,p); title(Line in 3-D Space);text(0,0,0,origin); xlabel(X),ylabel(Y),zlabel(Z);grid;matlab画PPT课件 (2) 5.2.2 三维曲面三维曲面1平面网格坐标矩阵的生成平面网格坐标矩阵的生成(1)利用矩阵运算生成。利用矩阵运算生成。x=a:dx:b; y=(c:dy:d);X=on

20、es(size(y)*x;Y=y*ones(size(x);(2)利用利用meshgrid函数生成。函数生成。x=a:dx:b; y=c:dy:d;X,Y=meshgrid(x,y);matlab画PPT课件 (2) 2. 绘制三维曲面的函数绘制三维曲面的函数 surf函数和函数和mesh函数的调用格式为:函数的调用格式为: mesh(x,y,z,c) surf(x,y,z,c)例例12 用三维曲面图表现函数用三维曲面图表现函数z=sin(y)cos(x)。 程序程序1: x=0:0.1:2*pi;x,y=meshgrid(x);z=sin(y).*cos(x); mesh(x,y,z);xl

21、abel(x-axis),ylabel(y-axis),zlabel(z-axis);title(mesh); 程序程序2: x=0:0.1:2*pi;x,y=meshgrid(x);z=sin(y).*cos(x); surf(x,y,z);xlabel(x-axis),ylabel(y-axis),zlabel(z-axis);title(surf); 程序程序3: x=0:0.1:2*pi;x,y=meshgrid(x);z=sin(y).*cos(x); plot3(x,y,z);xlabel(x-axis),ylabel(y-axis),zlabel(z-axis);title(pl

22、ot3-1);grid;matlab画PPT课件 (2) 例例13 在在xy平面内选择区域平面内选择区域-8,8-8,8,绘制函数,绘制函数的的4种三维曲面图。种三维曲面图。程序如下:程序如下:x,y=meshgrid(-8:0.5:8);z=sin(sqrt(x.2+y.2)./sqrt(x.2+y.2+eps);subplot(2,2,1);meshc(x,y,z);title(meshc(x,y,z)subplot(2,2,2);meshz(x,y,z);title(meshz(x,y,z)subplot(2,2,3);surfc(x,y,z)title(surfc(x,y,z)subp

23、lot(2,2,4);surfl(x,y,z)title(surfl(x,y,z)matlab画PPT课件 (2) 3. 标准三维曲面标准三维曲面sphere函数的调用格式为:函数的调用格式为: x,y,z=sphere(n)cylinder函数的调用格式为:函数的调用格式为: x,y,z=sphere(R,n)MATLAB还有一个还有一个peaks 函数,称为多峰函数,函数,称为多峰函数,常用于三维曲面的演示。常用于三维曲面的演示。matlab画PPT课件 (2) 例例14 绘制标准三维曲面图形。绘制标准三维曲面图形。程序如下:程序如下:t=0:pi/20:2*pi;x,y,z= cylin

24、der(2+sin(t),30);subplot(1,3,1);surf(x,y,z);subplot(1,3,2);x,y,z=sphere;surf(x,y,z);subplot(1,3,3);x,y,z=peaks(30); meshz(x,y,z); matlab画PPT课件 (2) 例例15 绘制多峰函数的瀑布图和等高线图。绘制多峰函数的瀑布图和等高线图。程序如下:程序如下:subplot(1,2,1);X,Y,Z=peaks(30);waterfall(X,Y,Z)xlabel(X-axis),ylabel(Y-axis),zlabel(Z-axis);subplot(1,2,2)

25、;contour3(X,Y,Z,12,k); %其中其中12代表高度的等级数代表高度的等级数xlabel(X-axis),ylabel(Y-axis),zlabel(Z-axis);matlab画PPT课件 (2) 色彩处理色彩处理 1. 颜色的向量表示颜色的向量表示 MATLAB除用字符表示颜色外,还可以用含有除用字符表示颜色外,还可以用含有3个元素的向个元素的向量表示颜色。量表示颜色。 2. 色图色图 色图是色图是m3 的数值矩阵,它的每一行是的数值矩阵,它的每一行是RGB三元组。色图三元组。色图矩阵可以人为地生成,也可以调用矩阵可以人为地生成,也可以调用MATLAB提供的函数来提供的函数

26、来定义色图矩阵。定义色图矩阵。 除除plot及其派生函数外,及其派生函数外,mesh、surf等函数均使用色图着色。等函数均使用色图着色。图形窗口色图的设置和改变,使用函数:图形窗口色图的设置和改变,使用函数: colormap(m) 其中其中m代表色图矩阵。代表色图矩阵。 3. 三维表面图形的着色三维表面图形的着色 三维表面图实际上就是在网格图的每一个网格片上涂上颜色。三维表面图实际上就是在网格图的每一个网格片上涂上颜色。surf函数用缺省的着色方式对网格片着色。除此之外,还可函数用缺省的着色方式对网格片着色。除此之外,还可以用以用shading命令来改变着色方式。命令来改变着色方式。mat

27、lab画PPT课件 (2) 例例16 3种图形着色方式的效果展示。种图形着色方式的效果展示。 程序如下:程序如下: z=peaks(20);colormap(copper); subplot(1,3,1);surf(z); subplot(1,3,2); surf(z);shading flat; subplot(1,3,3);surf(z);shading interp;matlab画PPT课件 (2)隐函数绘图隐函数绘图MATLAB提供了一个提供了一个ezplot函数绘制隐函数图形,下函数绘制隐函数图形,下面介绍其用法。面介绍其用法。(1) 对于函数对于函数f = f(x),ezplot函

28、数的调用格式为:函数的调用格式为:ezplot(f):在默认区间:在默认区间-2x2绘制绘制f = f(x)的图形。的图形。ezplot(f, a,b):在区间:在区间axb绘制绘制f = f(x)的图形。的图形。matlab画PPT课件 (2)(2) 对于隐函数对于隐函数f = f(x,y),ezplot函数的调用格式为:函数的调用格式为:ezplot(f):在默认区间:在默认区间-2x2和和-2y2绘制绘制f(x,y) = 0的图形。的图形。ezplot(f, xmin,xmax,ymin,ymax):在区间:在区间xminxxmax和和yminyymax绘制绘制f(x,y) = 0的图形

29、。的图形。ezplot(f, a,b):在区间:在区间axb和和ay b绘制绘制f(x,y) = 0的的图形。图形。matlab画PPT课件 (2)(3) 对于参数方程对于参数方程x = x(t)和和y = y(t),ezplot函数的调用格函数的调用格式为:式为:ezplot(x,y):在默认区间:在默认区间0t2绘制绘制x=x(t)和和y=y(t)的图形。的图形。ezplot(x,y, tmin,tmax):在区间:在区间tmin t tmax绘制绘制x=x(t)和和y=y(t)的图形。的图形。matlab画PPT课件 (2)例例17 隐函数绘图应用举例。隐函数绘图应用举例。程序如下:程序

30、如下:subplot(2,2,1);ezplot(x2+y2-9);axis equalsubplot(2,2,2);ezplot(x3+y3-5*x*y+1/5)subplot(2,2,3);ezplot(cos(tan(pi*x), 0,1)subplot(2,2,4);ezplot(8*cos(t),4*sqrt(2)*sin(t),0,2*pi)matlab画PPT课件 (2) 5.5 低层绘图操作低层绘图操作 5.5.1 图形对象及其句柄图形对象及其句柄 1. 图形对象图形对象 MATLAB把构成图形的各个基本要素称为图把构成图形的各个基本要素称为图形对象。这些对象包括计算机屏幕、图

31、形窗口形对象。这些对象包括计算机屏幕、图形窗口(Figure)、坐标轴、坐标轴(Axes)、用户菜单、用户菜单(Uimenu)、用户控件用户控件(Uicontrol)、曲线、曲线(Line)、曲面、曲面(Surface)、文字、文字(Text)、图像、图像(image)、光源、光源(Light)、区域块、区域块(Patch)和方框和方框(Rectangle)。系。系统将每一个对象按树型结构组织起来。每个图统将每一个对象按树型结构组织起来。每个图形对象都可以被独立地操作。形对象都可以被独立地操作。matlab画PPT课件 (2) 2. 图形对象句柄图形对象句柄 MATLAB在创建每一个图形对象时

32、,都为该对象在创建每一个图形对象时,都为该对象分配唯一的一个值,称其为图形对象句柄分配唯一的一个值,称其为图形对象句柄(Handle)。句柄是图形对象的唯一标识符。句柄是图形对象的唯一标识符。 MATLAB提供了提供了3个用于获取已有图形对象句柄的个用于获取已有图形对象句柄的函数:函数: gcf 获取当前图形窗口的句柄获取当前图形窗口的句柄(get current figure)。 gca 获取当前坐标轴的句柄获取当前坐标轴的句柄(get current axis)。 gco 获取最近被单击的图形对象的句柄获取最近被单击的图形对象的句柄(get current object)。matlab画P

33、PT课件 (2) 5.5.2 图形对象属性图形对象属性 1. 属性名与属性值属性名与属性值 MATLAB给每种对象的每一个属性规定了一个名给每种对象的每一个属性规定了一个名字,称为属性名,而属性名的取值成为属性值。例字,称为属性名,而属性名的取值成为属性值。例如,如,LineStyle是曲线对象的一个属性名,它的值决是曲线对象的一个属性名,它的值决定着线型,取值可以是定着线型,取值可以是- 、:、-.、-或或none。 2. 属性的操作属性的操作 set函数的调用格式为:函数的调用格式为: set(句柄,属性名句柄,属性名1,属性值,属性值1,属性名,属性名2,属性值,属性值2,) get函数

34、的调用格式为:函数的调用格式为: V=get(句柄,属性名句柄,属性名)matlab画PPT课件 (2) 3. 对象的公共属性对象的公共属性 图形对象具有各种各样的属性,有些属性是所有对象共同图形对象具有各种各样的属性,有些属性是所有对象共同具备的,有些则是各对象所特有的。具备的,有些则是各对象所特有的。 例例5.26 在同一坐标下画红、绿两根不同曲线,希望获得绿色在同一坐标下画红、绿两根不同曲线,希望获得绿色曲线的句柄,并对其进行设置。曲线的句柄,并对其进行设置。程序如下:程序如下:x=0:pi/50:2*pi;y=sin(x);z=cos(x);plot(x,y,r,x,z,g);H=ge

35、t(gca,Children); %获取两曲线句柄向量获取两曲线句柄向量Hfor k=1:length(H) if get(H(k),Color)=0 1 0 %0 1 0代表绿色代表绿色 Hg=H(k); %获取绿色线条句柄获取绿色线条句柄 endendpause %便于观察设置效果便于观察设置效果set(Hg,LineStyle,:,Marker,p); %对绿色曲线进行设置对绿色曲线进行设置matlab画PPT课件 (2) 5.5.3 图形对象的创建图形对象的创建 1. 图形窗口对象图形窗口对象 建立图形窗口对象使用建立图形窗口对象使用figure函数。调用该函函数。调用该函数的命令形式

36、为:数的命令形式为: 句柄变量句柄变量=figure(属性名属性名1,属性值,属性值1,属性名,属性名2,属性值属性值2,) MATLAB为每个图形窗口提供了很多属性。为每个图形窗口提供了很多属性。这些属性及其取值控制着图形窗口对象。除公这些属性及其取值控制着图形窗口对象。除公共属性外,其他常用属性:共属性外,其他常用属性:MenuBar属性、属性、Name属性、属性、Position属性、属性、Color属性等。属性等。matlab画PPT课件 (2) 例例5.27 建立一个图形窗口。该图形窗口没有菜单建立一个图形窗口。该图形窗口没有菜单条,标题名称为条,标题名称为“图形窗口示例图形窗口示例

37、”,起始于屏幕,起始于屏幕左下角、宽度和高度分别为左下角、宽度和高度分别为300像素点和像素点和150像素像素点,背景颜色为绿色,且当用户从键盘按下任意点,背景颜色为绿色,且当用户从键盘按下任意一个键时,将显示一个键时,将显示“Hello,Keyboard Key Pressed.”字样。字样。 命令如下:命令如下: hf=figure(Color,0,1,0,Position,1,1,300,150,. Name,图形窗口示例图形窗口示例,NumberTitle,off,MenuBar,none,. KeyPressFcn,disp(Hello,Keyboard Key Pressed.);

38、matlab画PPT课件 (2) 例例5.28 分别在分别在4个不同的图形窗口绘制出正弦、余弦、正切、个不同的图形窗口绘制出正弦、余弦、正切、余切曲线。要求先建立一个图形窗口并绘图,然后每关闭一个余切曲线。要求先建立一个图形窗口并绘图,然后每关闭一个再建立下一个,直到建立第再建立下一个,直到建立第4个窗口并绘图。个窗口并绘图。程序如下:程序如下: x=linspace(0,2*pi,60); y=sin(x);z=cos(x);t=tan(x);ct=1./(t+eps); %命令组待用命令组待用 C4=figure(Name,cotangent(x),NumberTitle,. off);p

39、lot(x,ct);axis(0,2*pi,-40,40); C3=figure(Name,tangent(x),DeleteFcn,C4,. NumberTitle,off);plot(x,t);axis(0,2*pi,-40,40); C2=figure(Name,cos(x),DeleteFcn,C3,. NumberTitle,off);plot(x,z);axis(0,2*pi,-1,1); %先创建先创建1个图形窗口并绘制曲线个图形窗口并绘制曲线 figure(Name,sin(x),DeleteFcn,C2,NumberTitle,off); plot(x,y);axis(0,2

40、*pi,-1,1);matlab画PPT课件 (2) 2. 坐标轴对象坐标轴对象建立坐标轴对象使用建立坐标轴对象使用axes函数,调用它的命令形式函数,调用它的命令形式为:为: 句柄变量句柄变量=axes(属性名属性名1,属性值,属性值1,属性名,属性名2,属性值,属性值2,)MATLAB为每个坐标轴对象提供了很多属性。除为每个坐标轴对象提供了很多属性。除公共属性外,还有其他常用属性。公共属性外,还有其他常用属性。matlab画PPT课件 (2) 例例5.29 利用坐标轴对象实现图形窗口的任意分割。利用坐标轴对象实现图形窗口的任意分割。 程序如下:程序如下: clf; %清图形窗口清图形窗口

41、x=linspace(0,2*pi,20);y=sin(x); axes(Posi,0.2,0.2,0.2,0.7);plot(y,x);title(sin(x)-1); axes(Posi,0.4,0.5,0.2,0.1);stairs(x,y);title(sin(x)-2); axes(Posi,0.55,0.6,0.25,0.3);stem(x,y);title(sin(x)-3); axes(Posi,0.55,0.2,0.25,0.3);stem(x,y);title(sin(x)-4); matlab画PPT课件 (2) 3. 曲线对象曲线对象 建立曲线对象使用建立曲线对象使用l

42、ine函数,调用它的命令形式为:函数,调用它的命令形式为: 句柄变量句柄变量=line(x,y,z,属性名属性名1,属性值,属性值1,属性名,属性名2,属性值,属性值2,) 其中对其中对x,y,z的解释与高层曲线函数的解释与高层曲线函数plot和和plot3等一样,等一样,其余的解释与前面介绍过的其余的解释与前面介绍过的figure和和axes函数类似。函数类似。每个曲线对象也具有很多属性。除公共属性外,还有每个曲线对象也具有很多属性。除公共属性外,还有其他常用属性。其他常用属性。例例5.30 利用曲线对象绘制曲线。利用曲线对象绘制曲线。程序如下:程序如下:t=0:pi/100:pi/2;y1

43、=sin(2*pi*t);y2=sqrt(3)/2*exp(-4*t).*sin(4*sqrt(3)*t+pi/3);figh=figure;axes(GridLineStyle,:,XLim,0,pi/2,YLim,-1,1);line(XData,t,YData,y1,LineWidth,1);line(t,y2);grid on matlab画PPT课件 (2) 4. 文字对象文字对象 使用使用text函数可以根据指定位置和属性值添函数可以根据指定位置和属性值添加文字说明,并保存句柄。调用该函数的命加文字说明,并保存句柄。调用该函数的命令形式为:令形式为: 句柄变量句柄变量=text(x

44、,y,z,说明文字说明文字,属性名属性名1,属性值,属性值1,属性名,属性名2,属性值,属性值2,) 其中说明文字中除使用标准的其中说明文字中除使用标准的ASCII字符外,字符外,还可使用还可使用LATEX格式的控制字符。格式的控制字符。 除公共属性外,文字对象还有其他常用属性。除公共属性外,文字对象还有其他常用属性。matlab画PPT课件 (2) 例例5.31 利用曲线对象绘制曲线和并利用文字对象完成标利用曲线对象绘制曲线和并利用文字对象完成标注。注。程序如下:程序如下:theta=-pi:.1:pi;y1=sin(theta);y2=cos(theta);h=line(theta,y1,

45、LineStyle,:,Color,g);line(theta,y2,LineStyle,-,Color,b);xlabel(-pi leq theta leq pi)ylabel(sin(theta)title(Plot of sin(theta)text(-pi/4,sin(-pi/4),leftarrow sin(-pidiv4),FontSize,12)set(h,Color,r,LineWidth,2) %改变曲线改变曲线1的颜色和的颜色和线宽线宽matlab画PPT课件 (2) 5. 曲面对象曲面对象 建立曲面对象使用建立曲面对象使用surface函数,调用它的命令形函数,调用它的

46、命令形式为:式为: 句柄变量句柄变量=surface(x,y,z,属性名属性名1,属性值,属性值1,属性,属性名名2,属性值,属性值2,) 其中对其中对x,y,z的解释与高层曲面函数的解释与高层曲面函数mesh和和surf等等一样,其余的解释与前面介绍过的一样,其余的解释与前面介绍过的figure和和axes等等函数类似。函数类似。 每个曲面对象也具有很多属性。除公共属性外,每个曲面对象也具有很多属性。除公共属性外,还有其他常用属性。还有其他常用属性。matlab画PPT课件 (2) 例例5.32 利用曲面对象绘制三维曲面利用曲面对象绘制三维曲面z=sin(y)cos(x)。程序如下:程序如下

47、: x=0:0.1:2*pi;x,y=meshgrid(x);z=sin(y).*cos(x);axes(view,-37.5,30);hs=surface(x,y,z,FaceColor,w,EdgeColor,flat); grid on; xlabel(x-axis),ylabel(y-axis),zlabel(z-axis); title(mesh-surf); pause;set(hs,FaceColor,flat); matlab画PPT课件 (2)6区域块对象区域块对象 区域块对象是指一个任意多边形区域。在区域块对象是指一个任意多边形区域。在MATLAB中,可以使用中,可以使用p

48、atch函数创建一个或多函数创建一个或多个多边形。有两种形式的个多边形。有两种形式的patch函数,一种是高级函数,一种是高级语法形式,另一种是低级语法形式。前者通过指语法形式,另一种是低级语法形式。前者通过指定每个小面的顶点坐标和颜色来创建区域块对象,定每个小面的顶点坐标和颜色来创建区域块对象,后者通过指定所有顶点的坐标和各小面的顶点和后者通过指定所有顶点的坐标和各小面的顶点和颜色来创建。颜色来创建。 使用高级语法形式时,使用高级语法形式时,patch函数的调用格式为:函数的调用格式为: patch(x,y,z,c) 该函数在当前坐标轴中创建二维该函数在当前坐标轴中创建二维(x,y)或三维或

49、三维(x,y,z)空间中带填充模式的区域块对象。空间中带填充模式的区域块对象。x,y,z确定顶点确定顶点坐标。如果坐标。如果x,y,z为矩阵,则为矩阵,则MATLAB按列创建多按列创建多个多边形。个多边形。c指定每一区域块对象的颜色,它既可指定每一区域块对象的颜色,它既可以用字符表示,也可以用以用字符表示,也可以用RGB三元组表示。三元组表示。例例5.33 绘制两个等直径圆柱体的交线。绘制两个等直径圆柱体的交线。matlab画PPT课件 (2)7方框对象方框对象 在在MATLAB中,矩形、圆角矩形、椭圆、中,矩形、圆角矩形、椭圆、圆及对应的区域图形都用方框对象表示。圆及对应的区域图形都用方框对

50、象表示。使用使用rectangle函数可以创建方框对象,其函数可以创建方框对象,其调用格式为:调用格式为: 句柄变量句柄变量= rectangle (属性名属性名1,属性值,属性值1,属性名属性名2,属性值,属性值2,)matlab画PPT课件 (2)例例5.34 在同一个图形窗口中创建矩形、圆角矩形、在同一个图形窗口中创建矩形、圆角矩形、椭圆和圆各一个,并使用了不同的线型和线宽。椭圆和圆各一个,并使用了不同的线型和线宽。subplot(2,2,1);rectangle(Position,2,3,25,15,LineWidth,3);subplot(2,2,2);rectangle(Posit

51、ion,3,5,15,8, Curvature,0.4,LineWidth,2); subplot(2,2,3);rectangle(Position,5,3,10,15,Curvature,1,1);subplot(2,2,4);rectangle(Position,5,3,10,10,Curvature,1,1,. LineStyle,-,FaceColor,r);axis equal matlab画PPT课件 (2)5.6 光照和材质处理光照和材质处理5.6.1 光照处理光照处理为了创建光照效果,为了创建光照效果,MATLAB提供了光源提供了光源(Light)图图形对象。用形对象。用li

52、ght函数创建函数创建Light对象,该函数的调对象,该函数的调用格式为:用格式为:light(Color,选项选项1,Style,选项选项2,Position,选项选项3)利用利用lighting命令可以设置光照模式,其格式为:命令可以设置光照模式,其格式为:lighting 选项选项其中选项有其中选项有4种取值:种取值:flat、gouraud、phong、none。 matlab画PPT课件 (2)例例5.35 光照处理后的球面并观察不同光照模式下的光照处理后的球面并观察不同光照模式下的效果。效果。程序如下:x,y,z=sphere(20);subplot(1,4,1);surf(x,y

53、,z);axis equal;shading interp;hold on;subplot(1,4,2);surf(x,y,z);axis equal;light(Position,0,1,1);shading interp;lighting flat;hold on;plot3(0,1,1,p);text(0,1,1, light);subplot(1,4,3);surf(x,y,z);axis equal;light(Position,0,1,1);shading interp;lighting gouraud;hold on;subplot(1,4,4);surf(x,y,z);axis

54、 equal;light(Position,0,1,1);shading interp;lighting phong;matlab画PPT课件 (2)5.6.2 材质处理材质处理 材质体现了图形对象的反射特性,修改区材质体现了图形对象的反射特性,修改区域块和曲面对象的反射特性域块和曲面对象的反射特性,可以改变在场可以改变在场景中应用光照时对象的显示外观。这些特景中应用光照时对象的显示外观。这些特性包括性包括:镜面反射和漫反射、环境光、镜面镜面反射和漫反射、环境光、镜面反射指数、镜面反射光的颜色和背面光照。反射指数、镜面反射光的颜色和背面光照。matlab画PPT课件 (2)例例5.36 生成一

55、个球体和一个立方体,观察不同光照属性对应的显示效果。生成一个球体和一个立方体,观察不同光照属性对应的显示效果。程序如下:程序如下:sphere(36);h=findobj(Type,surface);set(h,FaceLighting,phong,FaceColor,interp,.EdgeColor,0.4,0.4,0.4,BackFaceLighting,lit)hold onvert=2,0,-1;2,1,-1;3,0,0;3,0,-1;2,0,0;2,1,0;3,1,0;3,0,0;fac=1,2,3,4;2,6,7,3;4,3,7,8;1,5,8,4;1,2,6,5;5,6,7,8

56、;patch(Faces,fac,Vertices,vert,FaceColor,y);light(Position,1,3,2);light(Position,-3,-1,3);material shinyaxis equalhold offmatlab画PPT课件 (2)5.7 图像显示与动画制作图像显示与动画制作 5.7.1 图像显示图像显示 1. imread和和imwrite函数函数 imread和和imwrite函数分别用于将图像文件读函数分别用于将图像文件读入入MATLAB工作空间,以及将图像数据和色工作空间,以及将图像数据和色图数据一起写入一定格式的图像文件。图数据一起写入一定

57、格式的图像文件。 2. image和和imagesc函数函数 这两个函数用于图像显示。为了保证图像的显这两个函数用于图像显示。为了保证图像的显示效果,一般还应使用示效果,一般还应使用colormap函数设置图像函数设置图像色图。色图。matlab画PPT课件 (2) 例例5.37 在在E盘根目录下有一图像文件盘根目录下有一图像文件flower.jpg,在图形窗口显示该图像。,在图形窗口显示该图像。程序如下:程序如下:x,cmap=imread(e:flower.jpg); %读取图像的数据阵和色图阵读取图像的数据阵和色图阵image(x); %显示图像显示图像colormap(cmap);ax

58、is image off %保持宽高比并取消坐标轴保持宽高比并取消坐标轴matlab画PPT课件 (2) 5.7.2 动画制作动画制作 1影片动画制作影片动画制作 如果将如果将MATLAB产生的多幅图形保存起来,并利用系统提产生的多幅图形保存起来,并利用系统提供的函数进行播放,就可产生动画效果。供的函数进行播放,就可产生动画效果。MATLAB提供了提供了3个函数用于捕捉和播放动画,它们分别为个函数用于捕捉和播放动画,它们分别为getframe、moviein和和movie。 getframe函数可截取每一幅画面信息而形成一个很大的列向函数可截取每一幅画面信息而形成一个很大的列向量。该向量可保存

59、到一个变量中。显然,保存量。该向量可保存到一个变量中。显然,保存n幅图就需一幅图就需一个大矩阵。个大矩阵。 moviein(n)函数用来建立一个足够大的函数用来建立一个足够大的n列矩阵。该矩阵用来列矩阵。该矩阵用来保存保存n幅画面的数据,以备播放。之所以要事先建立一个大幅画面的数据,以备播放。之所以要事先建立一个大矩阵,是为了提高程序运行速度。矩阵,是为了提高程序运行速度。 movie(m,n)函数播放由矩阵函数播放由矩阵m所定义的画面所定义的画面n次,默认时播次,默认时播放一次。放一次。matlab画PPT课件 (2) 例例5.38 播放一个直径不断变化的球体。播放一个直径不断变化的球体。程

60、序如下:程序如下:x,y,z=sphere(50);m=moviein(30); %建立一个建立一个30列大矩阵列大矩阵for i=1:30 surf(i*x,i*y,i*z) %绘制球面绘制球面 m(:,i)=getframe; %将球面保存到将球面保存到m矩阵矩阵endmovie(m,10); %以每秒以每秒10幅的速度播放球面幅的速度播放球面matlab画PPT课件 (2) 2实时动画制作实时动画制作 制作实时动画的基本方法是,先画出初始制作实时动画的基本方法是,先画出初始图形,再计算活动对象的新位置,并在新图形,再计算活动对象的新位置,并在新位置上把它显示出来,最后擦除原位置上位置上把

61、它显示出来,最后擦除原位置上原有的对象,刷新屏幕。重复操作即可产原有的对象,刷新屏幕。重复操作即可产生动画效果。生动画效果。 matlab画PPT课件 (2) 例例5.39 模拟布朗运动。模拟布朗运动。程序如下:程序如下:n=30; %指定布朗运动的点数指定布朗运动的点数s=0.02; %指定温度或速率指定温度或速率%产生产生n个随机点个随机点(x,y),处于,处于-0.5到到0.5之间之间x=rand(n,1)-0.5;y=rand(n,1)-0.5;h=plot(x,y,.); %绘制随机点绘制随机点axis(-1 1 -1 1) ;axis squaregrid offset(h,EraseMode,Xor,MarkerSize,20); %设置擦除模式为设置擦除模式为Xor%循环循环5000次,产生动画效果次,产生动画效果for i=linspace(1,10,5000) drawnow x=x+s*randn(n,1); %在坐标点附近添加随机噪声在坐标点附近添加随机噪声 y=y+s*randn(n,1); set(h,XData,x,YData,y); %通过改变数据属性来重新绘图通过改变数据属性来重新绘图end

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