《2022年matlab教程习题及答案 .pdf》由会员分享,可在线阅读,更多相关《2022年matlab教程习题及答案 .pdf(39页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第 1章MATLAB 概论1.1 与其他计算机语言相比较,MATLAB 语言突出的特点是什么?MATLAB 具有功能强大、使用方便、输入简捷、库函数丰富、开放性强等特点。1.2 MATLAB 系统由那些部分组成?MATLAB 系统主要由开发环境、MATLAB数学函数库、 MATLAB语言、图形功能和应用程序接口五个部分组成。1.3 安装 MATLAB 时,在选择组件窗口中哪些部分必须勾选,没有勾选的部分以后如何补安装?在安装 MATLAB时,安装内容由选择组件窗口中个复选框是否被勾选来决定,可以根据自己的需要选择安装内容,但基本平台(即MATLAB选项)必须安装。第一次安装没有选择的内容在补安
2、装时只需按照安装的过程进行,只是在选择组件时只勾选要补装的组件或工具箱即可。1.4 MATLAB 操作桌面有几个窗口?如何使某个窗口脱离桌面成为独立窗口?又如何将脱离出去的窗口重新放置到桌面上?在 MATLAB操作桌面上有五个窗口,在每个窗口的右上角有两个小按钮,一个是关闭窗口的Close 按钮,一个是可以使窗口成为独立窗口的Undock 按钮,点击 Undock 按钮就可以使该窗口脱离桌面成为独立窗口,在独立窗口的view 菜单中选择Dock 菜单项就可以将独立的窗口重新防止的桌面上。1.5 如何启动 M 文件编辑 /调试器?在操作桌面上选择 ?建立新文件 ?或?打开文件 ?操作时,M 文件
3、编辑 /调试器将被启动。在命令窗口中键入 edit 命令时也可以启动M 文件编辑 /调试器。1.6 存储在工作空间中的数组能编辑吗?如何操作?存储在工作空间的数组可以通过数组编辑器进行编辑:在工作空间浏览器中双击要编辑的数组名打开数组编辑器,再选中要修改的数据单元,输入修改内容即可。1.7 命令历史窗口除了可以观察前面键入的命令外,还有什么用途?命令历史窗口除了用于查询以前键入的命令外,还可以直接执行命令历史窗口中选定的内容、将选定的内容拷贝到剪贴板中、将选定内容直接拷贝到M 文件中。1.8 如何设置当前目录和搜索路径,在当前目录上的文件和在搜索路径上的文件有什么区别?当前目录可以在当前目录浏
4、览器窗口左上方的输入栏中设置,搜索路径可以通过选择操作桌面的file 菜单中的 Set Path 菜单项来完成。在没有特别说明的情况下,只有当前目录和搜索路径上的函数和文件能够被MATLAB运行和调用,如果在当前目录上有与搜索路径上相同文件名的文件时则优先执行当前目录上的文件,如果没有特别说明,数据文件将存储在当前目录上。1.9 在 MATLAB 中有几种获得帮助的途径?在 MATLAB 中有多种获得帮助的途径:(1)帮助浏览器:选择view 菜单中的Help 菜单项或选择Help 菜单中的MATLAB Help 菜单项可以打开帮助浏览器;(2)help 命令:在命令窗口键入?help?命令可
5、以列出帮助主题,键入?help 函数名 ?可以得到指定函数的在线帮助信息;(3)lookfor 命令:在命令窗口键入?lookfor 关键词 ?可以搜索出一系列与给定关键词相关的命令和函数名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 39 页 - - - - - - - - - (4)模糊查询:输入命令的前几个字母,然后按Tab 键,就可以列出所有以这几个字母开始的命令和函数。注意: lookfor 和模糊查询查到的不是详细信息,通常还需要在确定了具体函数名称后用hel
6、p 命令显示详细信息。第 2章MATLAB 矩阵运算基础2.1 在 MATLAB 中如何建立矩阵194375,并将其赋予变量a? a=5 7 3;4 9 1 2.2 有几种建立矩阵的方法?各有什么优点?可以用四种方法建立矩阵:直接输入法,如a=2 5 7 3 ,优点是输入方法方便简捷;通过 M 文件建立矩阵,该方法适用于建立尺寸较大的矩阵,并且易于修改;由函数建立,如y=sin(x) ,可以由MATLAB 的内部函数建立一些特殊矩阵;通过数据文件建立,该方法可以调用由其他软件产生数据。2.3 在进行算术运算时,数组运算和矩阵运算各有什么要求?进行数组运算的两个数组必须有相同的尺寸。进行矩阵运算
7、的两个矩阵必须满足矩阵运算规则,如矩阵a 与 b 相乘( a*b)时必须满足a的列数等于b 的行数。2.4 数组运算和矩阵运算的运算符有什么区别?在加、减运算时数组运算与矩阵运算的运算符相同,乘、除和乘方运算时,在矩阵运算的运算符前加一个点即为数组运算,如a*b 为矩阵乘, a.*b 为数组乘。2.5 计算矩阵897473535与638976242之和。 a=5 3 5;3 7 4;7 9 8; b=2 4 2;6 7 9;8 3 6; a+b ans = 7 7 7 9 14 13 15 12 14 2.6 求i44i93i49i67i23i57i41i72i53i84x的共轭转置。 x=4
8、+8i 3+5i 2-7i 1+4i 7-5i;3+2i 7-6i 9+4i 3-9i 4+4i; xans = 4.0000 - 8.0000i 3.0000 - 2.0000i 3.0000 - 5.0000i 7.0000 + 6.0000i 2.0000 + 7.0000i 9.0000 - 4.0000i1.0000 - 4.0000i 3.0000 + 9.0000i 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 39 页 - - - - - - - - -
9、 7.0000 + 5.0000i 4.0000 - 4.0000i2.7 计算572396a与864142b的数组乘积。 a=6 9 3;2 7 5; b=2 4 1;4 6 8; a.*b ans = 12 36 3 8 42 40 2.8 “左除”与“右除”有什么区别?在通常情况下,左除x=ab 是 a*x=b 的解,右除x=b/a 是 x*a=b 的解,一般情况下,ab b/a。2.9 对于BAX,如果753467294A,282637B,求解 X。 A=4 9 2;7 6 4;3 5 7; B=37 26 28 ; X=AB X = -0.5118 4.0427 1.3318 2.1
10、0 已知:987654321a,分别计算a 的数组平方和矩阵平方,并观察其结果。 a=1 2 3;4 5 6;7 8 9; a.2 ans = 1 4 9 16 25 36 49 64 81 a2 ans = 30 36 42 66 81 96 102 126 150 2.11 463521a,263478b,观察 a 与 b 之间的六种关系运算的结果。 a=1 2 3;4 5 6; b=8 7 4;3 6 2; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 39 页
11、- - - - - - - - - ab ans = 0 1 0 1 0 1 a=b ans = 0 1 0 1 0 1 a a a=b ans = 0 0 0 0 0 0 a=b ans = 1 1 1 1 1 1 2.12 7.0802.05a,在进行逻辑运算时,a 相当于什么样的逻辑量。相当于 a=1 1 0 1 1 。2.13 在 sin(x)运算中, x 是角度还是弧度?在 sin(x) 运算中, x 是弧度, MATLAB 规定所有的三角函数运算都是按弧度进行运算。2.14 角度604530 x,求 x 的正弦、余弦、正切和余切。 x=30 45 60; x1=x/180*pi;
12、sin(x1) ans = 0.5000 0.7071 0.8660 cos(x1) ans = 0.8660 0.7071 0.5000 tan(x1) ans = 0.5774 1.0000 1.7321 cot(x1) ans = 1.7321 1.0000 0.5774 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 39 页 - - - - - - - - - 2.15 用四舍五入的方法将数组2.4568 6.3982 3.9375 8.5042取整。 b=2.
13、4568 6.3982 3.9375 8.5042; round(b) ans = 2 6 4 9 2.16 矩阵728365219a,分别对 a 进行特征值分解、奇异值分解、 LU 分解、 QR 分解及 Chollesky 分解。 v,d=eig(a,b) v = -0.4330 -0.2543 -0.1744 -0.5657 0.9660 -0.6091 -0.7018 0.0472 0.7736 d = 13.5482 0 0 0 4.8303 0 0 0 3.6216 a=9 1 2;5 6 3;8 2 7; u,s,v=svd(a)u = -0.5601 0.5320 -0.6350
14、 -0.4762 -0.8340 -0.2788 -0.6779 0.1462 0.7204 s = 15.5234 0 0 0 4.5648 0 0 0 3.3446 v = -0.8275 0.3917 -0.4023 -0.3075 -0.9156 -0.2592 -0.4699 -0.0907 0.8781 l,u=lu(a) l = 1.0000 0 0 0.5556 1.0000 0 0.8889 0.2041 1.0000 u = 9.0000 1.0000 2.0000 0 5.4444 1.8889 0 0 4.8367 q,r=qr(a) q = -0.6903 0.396
15、9 -0.6050 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 39 页 - - - - - - - - - -0.3835 -0.9097 -0.1592 -0.6136 0.1221 0.7801 r = -13.0384 -4.2183 -6.8260 0 -4.8172 -1.0807 0 0 3.7733 c=chol(a) c = 3.0000 0.3333 0.6667 0 2.4267 1.1447 0 0 2.2903 2.17 将矩阵5724a、3
16、817b和2695c组合成两个新矩阵:(1)组合成一个4 3 的矩阵,第一列为按列顺序排列的a 矩阵元素,第二列为按列顺序排列的b 矩阵元素,第三列为按列顺序排列的c 矩阵元素,即237912685574(2)按照 a、 b、c 的列顺序组合成一个行矢量,即296531877254 a=4 2;5 7; b=7 1;8 3; c=5 9;6 2; % (1) d=a(:) b(:) c(:) d = 4 7 5 5 8 6 2 1 9 7 3 2 % (2) e=a(:);b(:);c(:) e = 4 5 2 7 7 8 1 3 5 6 9 2 或利用( 1)中产生的d e=reshape(
17、d,1,12) ans = 4 5 2 7 7 8 1 3 5 6 9 2 第 3 章数值计算基础3.1 将(x-6)(x-3)(x-8)展开为系数多项式的形式。 a=6 3 8; pa=poly(a); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 39 页 - - - - - - - - - ppa=poly2sym(pa) ppa = x3-17*x2+90*x-144 3.2 求解多项式x3-7x2+2x+40 的根。 r=1 -7 2 40; p=roots(
18、r); -0.2151 0.4459 0.7949 0.2707 3.3 求解在 x=8 时多项式 (x-1)( x-2) (x-3)(x-4)的值。 p=poly(1 2 3 4); polyvalm(p,8) ans = 840 3.4 计算多项式乘法(x2+2x+2)(x2+5x+4)。 c=conv(1 2 2,1 5 4) c = 1 7 16 18 8 3.5 计算多项式除法(3x3+13x2+6x+8)/(x+4)。 d=deconv(3 13 6 8,1 4) d = 3 1 2 3.6 对下式进行部分分式展开:27243645232345234xxxxxxxxx a=1 3
19、4 2 7 2; b=3 2 5 4 6; r,s,k=residue(b,a) r = 1.1274 + 1.1513i 1.1274 - 1.1513i -0.0232 - 0.0722i -0.0232 + 0.0722i 0.7916 s = -1.7680 + 1.2673i -1.7680 - 1.2673i 0.4176 + 1.1130i 0.4176 - 1.1130i -0.2991 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 39 页 - - -
20、 - - - - - - k = 3.7 计算多项式9514124234xxxx的微分和积分。 p=4 12 14 5; pder=polyder(p); pders=poly2sym(pder) pint=polyint(p); pints=poly2sym(pint) pders = 12*x2-24*x-14 pints = x4-4*x3-7*x2+5*x 3.8 解方程组66136221143092x。 a=2 9 0;3 4 11;2 2 6; b=13 6 6; x=ab x = 7.4000 -0.2000 -1.4000 3.9 求欠定方程组5865394742x的最小范数解
21、。 a=2 4 7 4;9 3 5 6; b=8 5; x=pinv(a)*b x = -0.2151 0.4459 0.7949 0.2707 3.10 有一组测量数据如下表所示,数据具有y=x2的变化趋势,用最小二乘法求解y。x 1 1.5 2 2.5 3 3.5 4 4.5 5 y -1.4 2.7 3 5.9 8.4 12.2 16.6 18.8 26.2 x=1 1.5 2 2.5 3 3.5 4 4.5 5 y=-1.4 2.7 3 5.9 8.4 12.2 16.6 18.8 26.2 e=ones(size(x) x.2 c=ey x1=1:0.1:5; 名师资料总结 - -
22、-精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 8 页,共 39 页 - - - - - - - - - y1=ones(size(x1),x1.2*c; plot(x,y,ro,x1,y1,k) 3.11 矩阵943457624a,计算 a的行列式和逆矩阵。 a=4 2 -6;7 5 4 ;3 4 9; ad=det(a) ai=inv(a) ad = -64 ai = -0.4531 0.6562 -0.5937 0.7969 -0.8437 0.9062 -0.2031 0.1562 -0.0937
23、 3.12 y=sin(x),x 从 0 到 2 ,x=0.02 ,求 y 的最大值、最小值、均值和标准差。 x=0:0.02*pi:2*pi; y=sin(x); ymax=max(y) ymin=min(y) ymean=mean(y) ystd=std(y) ymax = 1 ymin = -1 ymean = 2.2995e-017 ystd = 0.7071 3.13 54321x,108642y,计算 x 的协方差、 y 的协方差、 x 与 y 的互协方差。 x=1 2 3 4 5; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - -
24、- - - - 名师精心整理 - - - - - - - 第 9 页,共 39 页 - - - - - - - - - y=2 4 6 8 10; cx=cov(x) cy=cov(y) cxy=cov(x,y) cx = 2.5000 cy = 10 cxy = 2.5000 5.0000 5.0000 10.0000 3.14 参照例 3-20 的方法,计算表达式22e1053yxyxz的梯度并绘图。 v = -2:0.2:2; x,y = meshgrid(v); z=10*(x.3-y.5).*exp(-x.2-y.2); px,py = gradient(z,.2,.2); cont
25、our(x,y,z) hold on quiver(x,y,px,py) hold off 3.15 有一正弦衰减数据y=sin(x).*exp(-x/10) ,其中 x=0:pi/5:4*pi ,用三次样条法进行插值。 x0=0:pi/5:4*pi; y0=sin(x0).*exp(-x0/10); x=0:pi/20:4*pi; y=spline(x0,y0,x); plot(x0,y0,or,x,y,b) 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 10 页,共 39 页
26、- - - - - - - - - 第 4 章符号数学基础4.1 创建符号变量有几种方法?MATLAB 提供了两种创建符号变量和表达式的函数:sym 和 syms。sym 用于创建一个符号变量或表达式,用法如x=sym(x) 及 f=sym( x+y+z),syms 用于创建多个符号变量,用法如syms x y z。f=sym( x+y+z)相当于syms x y z f= x+y+z 4.2 下面三种表示方法有什么不同的含义?(1)f=3*x2+5*x+2 (2)f=3*x2+5*x+2 (3)x=sym(x) f=3*x2+5*x+2 (1)f=3*x2+5*x+2 表示在给定x 时,将
27、3*x2+5*x+2的数值运算结果赋值给变量f,如果没有给定x 则指示错误信息。(2)f=3*x2+5*x+2 表示将字符串 3*x2+5*x+2 赋值给字符变量f,没有任何计算含义,因此也不对字符串中的内容做任何分析。(3)x=sym(x) f=3*x2+5*x+2 表示 x 是一个符号变量,因此算式 f=3*x2+5*x+2就具有了符号函数的意义,f 也自然成为符号变量了。4.3 用符号函数法求解方程at2+b* t+c=0。 r=solve(a*t2+b*t+c=0,t) r = 1/2/a*(-b+(b2-4*a*c)(1/2) 1/2/a*(-b-(b2-4*a*c)(1/2) 4.
28、4 用符号计算验证三角等式:sin(1)cos(2)-cos(1)sin(2) =sin(1-2) syms phi1 phi2; y=simple(sin(phi1)*cos(phi2)-cos(phi1)*sin(phi2) 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 11 页,共 39 页 - - - - - - - - - y = sin(phi1-phi2) 4.5 求矩阵22211211aaaaA的行列式值、逆和特征根。 syms a11 a12 a21 a22; A
29、=a11,a12;a21,a22 AD=det(A) % 行列式 AI=inv(A) % 逆 AE=eig(A) % 特征值A = a11, a12 a21, a22 AD = a11*a22-a12*a21 AI = -a22/(-a11*a22+a12*a21), a12/(-a11*a22+a12*a21) a21/(-a11*a22+a12*a21), -a11/(-a11*a22+a12*a21) AE = 1/2*a11+1/2*a22+1/2*(a112-2*a11*a22+a222+4*a12*a21)(1/2) 1/2*a11+1/2*a22-1/2*(a112-2*a11*
30、a22+a222+4*a12*a21)(1/2) 4.6 因式分解:6555234xxxx syms x; f=x4-5*x3+5*x2+5*x-6; factor(f) ans = (x-1)*(x-2)*(x-3)*(x+1) 4.7 )sin()log(12xxexxafax,用符号微分求df/dx。 syms a x; f=a, x2, 1/x; exp(a*x), log(x), sin(x); df=diff(f) df = 0, 2*x, -1/x2 a*exp(a*x), 1/x, cos(x) 4.8 求代数方程组002yxcbyax关于 x,y 的解。 S=solve(a*
31、x2+b*y+c=0,b*x+c=0,x,y); disp(S.x=) , disp(S.x) disp(S.y=) , disp(S.y) 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 12 页,共 39 页 - - - - - - - - - S.x= -c/b S.y= -c*(a*c+b2)/b3 4.9 符号函数绘图法绘制函数x=sin(3t)cos(t) ,y=sin(3t)sin(t) 的图形, t 的变化范围为 0,2 。 syms t ezplot(sin(3*t
32、)*cos(t),sin(3*t)*sin(t),0,pi) 4.10 绘制极坐标下sin(3*t)*cos(t) 的图形。 syms t ezpolar(sin(3*t)*cos(t) 第 5 章基本图形处理功能5.1 绘制曲线13xxy, x 的取值范围为-5,5 。 x=-5:0.2:5; y=x.3+x+1; plot(x,y) 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 13 页,共 39 页 - - - - - - - - - 5.2 有一组测量数据满足-atey,
33、t 的变化范围为010, 用不同的线型和标记点画出a=0.1、 a=0.2 和 a=0.5三种情况下的曲线。 t=0:0.5:10; y1=exp(-0.1*t); y2=exp(-0.2*t); y3=exp(-0.5*t); plot(t,y1,-ob,t,y2,:*r,t,y3,-.g) 5.3 在 5.1 题结果图中添加标题-atey,并用箭头线标识出各曲线a 的取值。 title(ityrm=e-itat) title(ityrm=e-itat,FontSize,12) text(t(6),y1(6),leftarrowitarm=0.1,FontSize,11) text(t(6)
34、,y2(6),leftarrowitarm=0.2,FontSize,11) text(t(6),y3(6),leftarrowitarm=0.5,FontSize,11) 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 14 页,共 39 页 - - - - - - - - - x = -pi:.1:pi; y = sin(x); plot(x,y) set(gca,XTick,-pi:pi/2:pi) set(gca,XTickLabel, 中国 ,日本,0,pi/2,pi) 5
35、.4 在 5.1 题结果图中添加标题-atey和图例框。 title(y=e-itat,FontSize,12) legend(a=0.1,a=0.2,a=0.5) 5.5 表中列出了4 个观测点的6 次测量数据,将数据绘制成为分组形式和堆叠形式的条形图。第 1 次第 2 次第 3 次第 4 次第 5 次第 6 次观测点 1 3 6 7 4 2 8 观测点 2 6 7 3 2 4 7 观测点 3 9 7 2 5 8 4 观测点 4 6 4 3 2 7 4 y=3 6 9 6;6 7 7 4;7 3 2 3;4 2 5 2;2 4 8 7;8 7 4 4; bar(y) 名师资料总结 - - -
36、精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 15 页,共 39 页 - - - - - - - - - bar(y, stack ) 5.6 x= 66 49 71 56 38 ,绘制饼图,并将第五个切块分离出来。 x=66 49 71 56 38; L=0 0 0 0 1; pie(x,L) 5.7 22yxxez,当 x 和 y 的取值范围均为-2 到 2 时,用建立子窗口的方法在同一个图形窗口中绘制出三维线图、网线图、表面图和带渲染效果的表面图。 x,y=meshgrid(-2:.2:2); z=
37、x.*exp(-x.2-y.2); mesh(x,y,z) subplot(2,2,1), plot3(x,y,z) title(plot3 (x,y,z) subplot(2,2,2), mesh(x,y,z) 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 16 页,共 39 页 - - - - - - - - - title(mesh (x,y,z) subplot(2,2,3), surf(x,y,z) title(surf (x,y ,z) subplot(2,2,4),
38、surf(x,y,z), shading interp title(surf (x,y ,z), shading interp) 5.8 绘制 peaks函数的表面图,用colormap 函数改变预置的色图,观察色彩的分布情况。 surf(peaks(30); colormap(hot) 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 17 页,共 39 页 - - - - - - - - - colormap(cool) colormap(lines) 5.9 用 sphere 函
39、数产生球表面坐标,绘制不通明网线图、透明网线图、表面图和带剪孔的表面图。 x,y,z=sphere(30); mesh(x,y,z) 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 18 页,共 39 页 - - - - - - - - - mesh(x,y,z),hidden off surf(x,y,z) z(18:30,1:5)=NaN*ones(13,5); surf(x,y,z) 5.10 将 5.9 题中的带剪孔的球形表面图的坐标改变为正方形,以使球面看起来是圆的而不是椭
40、圆的,然名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 19 页,共 39 页 - - - - - - - - - 后关闭坐标轴的显示。axis square axis off 第 6 章高级图形处理功能6.1 轴对象是使用的最多的图形对象之一,那么轴对象是哪个对象的子对象,又是那些对象的父对象?轴对象是图形窗口对象的子对象,是图像、灯光、线、块、矩形、表面、字的父对象。6.2 什么是图形句柄?图形句柄有什么用途?图形句柄是每个图形对象从产生时起就被赋予的一个唯一的标识。利用图形句柄
41、既可以操纵一个已经存在的图形对象的属性,也可以在建立图形对象时指定属性的值,特别是对指定对象句柄的操作不会影响同时存在的其他对象,这是非常有用的。6.3 如何设置和获取指定句柄对象的属性值?一图形窗口对象的句柄为h,先查询该窗口对象可以设置的各种属性,再将窗口的灰色背景设置为白色背景。(1)利用 set(句柄,属性名称 ,属性值)语句可以设置指定对象的属性,get(句柄,属性名称)语句可以获得指定对象的属性。(2) set(h)Alphamap BackingStore: on | off CloseRequestFcn: string -or- function handle -or- ce
42、ll array Color Colormap CurrentAxesCurrentCharacter CurrentObject ,从列出的属性内容可以看到,设置背景颜色的属性名为Color,因此 set(h,color , w)即可将图形窗口的背景色改为白色。6.4 已知三维图形视角的缺省值是方位角为-37.5,仰角为30,将观察点顺时针旋转20 角的命令是什么? view(-57.5,30) 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 20 页,共 39 页 - - - -
43、 - - - - - 6.5 画一双峰曲面(peaks)图,加灯光light,改变光源的位置观察图形的变化。 surf(peaks) shading interp lighting phong light(Position,-3 -2 1); light(Position,-1 0 1); 6.6 在双峰曲面上改变不同的光照模式,观察效果。 surf(peaks) shading interp light(Position,-3 -2 1); lighting flat lighting gouraud 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - -
44、- - - - - - 名师精心整理 - - - - - - - 第 21 页,共 39 页 - - - - - - - - - lighting phong lighting none 6.7 用 subplot 语句在一个图形窗口上开多个大小不等的子窗口进行绘图并添加注释,见图。 subplot(position,0.1,0.15,0.3,0.65) 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 22 页,共 39 页 - - - - - - - - - hist(randn(
45、1,1000),20); xlabel( 直方图 ) subplot(position,0.45,0.52,0.25,0.28) xp,yp,zp=peaks; contour(xp,yp,zp,15,k) hold on pcolor(xp,yp,zp) shading interp hold off axis off text(-1.2,-4, 伪彩色图 ) subplot(position,0.72,0.5,0.25,0.3) sphere(25); axis equal,axis(-0.75,0.75,-0.75,0.75,-0.75,0.75) light(Position,1 3
46、2); light(Position,-3 -1 3); material shiny axis off text(-0.8,-0.7,-1, 三维图 ) subplot(position,0.45,0.15,0.5,0.25) t=0:pi/15:pi; y=sin(4*t).*sin(t)/2; plot(t,y,-bs,LineWidth,2,. %设置线型MarkerEdgeColor,k,. %设置标记点边缘颜色MarkerFaceColor,y,. %设置标记点填充颜色MarkerSize,5) axis(0,3.14,-0.5,0.5) xlabel( 带标记点的线图) subp
47、lot(position,0.1,0.9,0.8,0.1) text(0.25,0.2, 多窗口绘图示例,. fontsize,25,fontname, 隶书 ,color,b) axis off 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 23 页,共 39 页 - - - - - - - - - 6.8 用c,hc=contour(peaks(30) 语句绘制双峰曲面的等高线图,通过控制图形句柄的方法将第四条等高线加粗为 2 磅,将第六条等高线表示为虚线,在第十条等高线上加星
48、号标记 c,hc=contour(peaks(30); set(hc(4),linewidth,2) set(hc(6),edgecolor,1,0.8,0,linestyle,:) set(hc(10),marker,*) 6.9 做一个花瓶, 如图示。(提示: 做一个旋转体表面,调入一幅图像对该表面进行彩绘,即用图像的色图索引作为表面体的色图索引) t=(0:20)/20; r=sin(2*pi*t)+2; x,y,z=cylinder(r,40); % 产生旋转体表面的三维数据名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - -
49、 名师精心整理 - - - - - - - 第 24 页,共 39 页 - - - - - - - - - cx=imread(flowers.tif); % 读取名为flowers.tif 的图象文件 c,map=rgb2ind(cx,256); % 真彩色图转换为索引图(若读入的是索引图,不需转换) c1=double(c)+1; % 把 unit8 编址图象数据变换为双精度格式 surface(x,y ,z,Cdata,flipud(c1),FaceColor,texturemap,. EdgeColor,none,CDataMapping,direct,Ambient,. 0.6,di
50、ffuse,0.8,speculars,0.9) %通过属性设置,进行彩绘。 colormap(map) % 使用图象的色图 view(-50,10) axis off 6.10 用图形窗口功能在图形窗口中的任意位置产生多个大小不等的子窗口,与6.7 题结果进行比较。提示:(1)使用 figure 命令创建一个新的图形窗口;(2)在图形窗口的Insert 菜单中选择Axes 项,鼠标指针由箭头变为十字,按下鼠标左键在图形窗口的任意位置拖曳创建一个坐标轴对象;(3)重复 2 创建其他坐标轴对象。6.11 利用图形窗口的曲线拟合工具,选择不同的拟合方法对给定的数据y=9,18,21,19,22,2