第10章 MATLAB图形对象句柄_习题答案
- 格式:doc
- 大小:60.50 KB
- 文档页数:3
第9、10章测验一、单项选择题(每小题6分,共36分)1.下列函数中,函数( A )用于获取当前图形窗口的句柄。
A.gcfB.gcaC.findobjD.gco2.下列调用格式中,( D)将返回当前图形窗口的所有属性值。
A.set(gcf)B.get(gca)C.set(gca)D.get(gcf)3.下列命令中( C )用于清除当前图形窗口的内容,但不关闭窗口。
A.clearB.clcC.clfD.close4.下列函数中,(B)按照指定的属性来获取图形对象的句柄。
A.findB.findobjC.findsymD.findstr5.下列图形对象中,( A )是坐标轴的父对象。
A.图形窗口B.曲线C.用户界面对象D.计算机屏幕6.下列调用格式中,(C)用于显示当前坐标轴的所有允许属性。
A.set(gcf)B.get(gca)C.set(gca)D.get(gcf)二、填空题(每空6分,共36分)1.计算机屏幕作为根对象由系统自动建立,其句柄值为__0___,而图形窗口对象的句柄值为一_正整数_,并显示在该窗口的标题栏,其他图形对象的句柄值为_浮点数_。
2.在MATLAB中,建立快捷菜单的具体步骤是,(1)利用_UIContextMenu_函数建立快捷菜单;(2)利用__uimenu____函数为快捷菜单建立菜单项;(3)利用_set_函数将该快捷菜单和某图形对象联系起来。
三、判断题(正确的打“√”,错误的打“×”,每小题6分,共30分)1.在MATLAB中,每个具体图形不一定包含全部的图像对象,但必须带有计算机屏幕和图形窗口对象。
(√)2.在图形对象属性名的写法中,必须区分字母的大小写。
(×)3.用户可以通过set函数重新设置对象属性,同时也可以通过get函数获取这些属性值。
(√)4.图形窗口对象的WindowButtonUpFcn属性表示对鼠标键按下动作(释放)的响应。
(×)5.图形对象的句柄值由系统自动分配,且每次分配的值都相同。
MATLAB图形对象句柄命令MATLAB图形对象句柄命令2010-05-25命令1 figure功能创建一个新的图形对象。
图形对象为在屏幕上单独的窗口,在窗口中可以输出图形。
用法figure用缺省的属性值创建一个新的图形对象。
figure('PropertyName',PropertyValue,…)对指定的属性PropertyName用指定的属性值PropertyValue(属性名与属性值成对出现)创建一个新的图形窗口,对于那些没有指定的属性,则用缺省值。
属性名与有效的属性值见下表。
figure(h)1.若h为一个已经存在的图形的句柄,则figure(h)使由h标记的图形成为当前图形,使它可见,且在屏幕上把它显示到所有图形之前。
当前图形为图像输出的地方。
2.若h不是已经存在图形的句柄,但是为一整数,则该命令生成一图形窗口,同时把该窗口的句柄赋值为h;若h不是一图形窗口的句柄,也不是一整数,则返回一错误信息。
h=figure(…)返回图形窗口对象的句柄给h。
表7-10属性名属性说明有效属性值窗口位置Position图形窗口的位置与大小有效值:四维向量[left,bottom,width,height]缺省值:决定于显示Units用于解释属性Position的单位有效值:inches(英寸)centimeters(厘米)normalized(标准化单位,认为窗口为一长宽都是1)points(点)pixels(像素)characters(字符)缺省值:pixels指定类型与外在显示Color窗口的背景颜色有效值:ColorSpec(有效的颜色参数)缺省值:取决于颜色表(参见命令colordef)Menubar转换图形窗口菜单条的"开"与"关"有效值:none、figure缺省值:figure Name显示图形窗口的标题有效值:任意字符串缺省值:''(空字符串)NumberTitle标题栏中是否显示'Figure No.n',其中n为图形窗口的编号有效值:on、off缺省值:on Resize指定图形窗口是否可以通过鼠标改变大小有效值:on、off缺省值:on SelectionHighlight当图形窗口被选中时,是否突出显示有效值:on、off缺省值:on Visible确定图形窗口是否可见有效值:on、off缺省值:on WindowStyle指定窗口为标准窗口还是典型窗口有效值:normal(标准窗口)、modal(典型窗口)缺省值:normal控制色图Colormap图形窗口的色图有效值:m*3阶的RGB颜色矩阵缺省值:jet色图Dithermap用于真颜色数据以伪颜色显示的色图有效值:m*3阶的RGB颜色矩阵缺省值:有所有颜色的色图DithermapMode是否使用系统生成的抖动色图有效值:auto、manual缺省值:manual FixedColors不是从色图中获得的颜色有效值:m*3阶的RGB颜色矩阵缺省值:无(只读模式)MinColormap系统颜色表中能使用的最少颜色数有效值:任一标量缺省值:64 ShareColors允许MATLAB共享系统颜色表中的颜色有效值:on、off缺省值:on指定透明度Alphamap图形窗口的α色图,用于设定透明度。
matlab绘图试题及答案MATLAB绘图试题及答案1. 绘制正弦曲线题目:使用MATLAB绘制函数 \( y = \sin(x) \) 在区间 \([0, 2\pi]\) 上的图像。
答案:```matlabx = 0:0.01:2*pi;y = sin(x);plot(x, y);title('Sin(x) Function');xlabel('x');ylabel('y');```2. 绘制二次函数图像题目:绘制函数 \( y = ax^2 + bx + c \) 在区间 \([-10, 10]\) 上的图像,其中 \( a = 1, b = 2, c = 3 \)。
答案:```matlabx = -10:0.1:10;y = x.^2 + 2*x + 3;plot(x, y);title('Quadratic Function y = x^2 + 2x + 3');xlabel('x');ylabel('y');```3. 绘制柱状图题目:给定一组数据 [10, 20, 30, 40, 50],使用MATLAB绘制柱状图。
答案:```matlabdata = [10, 20, 30, 40, 50];bar(data);title('Bar Chart');xlabel('Index');ylabel('Value');```4. 绘制散点图题目:给定两组数据 \( x = [1, 2, 3, 4, 5] \) 和 \( y = [2, 4, 6, 8, 10] \),使用MATLAB绘制对应的散点图。
答案:```matlabx = [1, 2, 3, 4, 5];y = [2, 4, 6, 8, 10];scatter(x, y);title('Scatter Plot');xlabel('x');ylabel('y');```5. 绘制饼图题目:给定一组数据 [10, 20, 30, 40],使用MATLAB绘制饼图。
第二章1.计算复数3+4i与5-6i的乘积。
a=3+4ib=5-6ic=a*b2•构建结构体Students» 属性包含Name, age 和Email,数据包括{"Zhang", 18,"]}、「Wang,, 21, []}和{'『,[]』},构建后读取所有Name属性值,并且修改'Zhang,的Age 属性值为19.Students(l).Age=18Students(l).Email-1/'Students(2).Name=,Wang,Students(2).Age=21Students(2).Email=[]Students(3).Name=,Li,Students(3).Age=[]Students(3).Email=[]Student(l).Age(l)=19Stude nt.Age3.用满矩阵和稀疏矩阵存储方式分别构造下属矩阵:A=[0 1 0 0 0;1 0 0 0 0;0 0 0 0 0;0 0 0 1 0]A=[0 1 0 0 0;1 0 0 0 0;0 0 0 0 0;0 0 0 1 0]S=sparse(A)S=sparse([2,l,4]/[1,2/4L[1,1,1]A5)4.采用向量构造符得到向量[1,5,941],A=l:4:415.按水平和竖直方向分别合并下述两个矩阵:A=[l 0 0;11 0;0 0 1LB=[2 3 4;5 6 7;8 9 10] A=[10 0;110;0 0 1]B=[2 3 4;5 6 7;8 9 10]C=[A B]D=[A;B]6.分别删除第五题两个结果的第2行。
A=[10 0;110;0 0 1]B=[2 3 4;5 6 7;8 9 10]C=[A B]D=[A;B]C(2,:)=[]D(2/:)=[]7•分别将第5题两个结果的第2行最后3列的数值改为12 13]oA=[10 0;110;0 0 1]D=[A;B]C(2/4:6)=[ll 12 13]D(2/:)=[ll 12 13]8.分別查看第5题两个结果的各方向长度A=[10 0;110;0 0 1]B=[2 3 4;5 6 7;8 9 10]C=[A B]D=[A;B]a=size(C)b=size(D)9.分別判断pi是否为字符串和浮点数。
一、单选题1、用于获取当前图形窗口句柄的函数是()。
A.gcaB.gcfC.gcoD.gcw正确答案:B2、使用figure 函数建立图形窗口时,默认的标题是()。
A.图形窗口n(n是图形窗口的序号)B.Fig n(n是图形窗口的序号)C.Figure n(n是图形窗口的序号)D.Figure Window n(n是图形窗口的序号)正确答案:C3、用于决定坐标轴对象是否带边框的属性是()。
A.BoxB.GridC.PositionD.Font正确答案:A4、下列命令中,除一条命令外其他三条命令等价,这一条命令是()。
A.line(x,y,'Color','r');B.line(x,y,'r');C.plot(x,y,'Color','r');D.plot(x,y,'r');正确答案:B5、h代表一根曲线,要设置曲线的颜色为红色,可以使用命令()。
A.h.Color='r';B.h.color='r';C.h.COLOR='r';D.h.LineColor='r';正确答案:A6、用于标识图形对象的属性是()属性。
A.TitleB.StringC.Tagbel正确答案:C7、控件的BackgroundColor属性和ForegroundColor属性分别代表()。
A.前景色和背景色B.前景色和说明文字的颜色C.说明文字的颜色和背景色D.背景色和说明文字的颜色正确答案:D8、用于定义按钮被单击的响应的属性是()。
A.StringmandC.CallBackD.Value正确答案:C9、定义菜单项时,为了使该菜单项呈灰色,应将其Enable属性设置为()。
A.'On'B.'Off'C.'Yes'D.'No'正确答案:B10、用于检查和设置对象属性的图形用户界面设计工具是()。
matlab课后习题答案(附图)习题2.1画出下列常见曲线的图形y (1)⽴⽅抛物线3x命令:syms x y;ezplot('x.^(1/3)')(2)⾼斯曲线y=e^(-X^2);命令:clearsyms x y;ezplot('exp(-x*x)')(3)笛卡尔曲线命令:>> clear>> syms x y;>> a=1;>> ezplot(x^3+y^3-3*a*x*y)(4)蔓叶线命令:>> clear>> syms x y;>> a=1ezplot(y^2-(x^3)/(a-x))(5)摆线:()()tsin-=,=-by1命令:>> clear>> t=0:0.1:2*pi;>> x=t-sin(t);>>y=2*(1-cos(t)); >> plot(x,y)7螺旋线命令:>> clear >> t=0:0.1:2*pi; >> x=cos(t); >> y=sin(t); >> z=t;>>plot3(x,y,z)(8)阿基⽶德螺线命令:clear>> theta=0:0.1:2*pi;>> rho1=(theta);>> subplot(1,2,1),polar(theta,rho1)(9) 对数螺线命令:cleartheta=0:0.1:2*pi;rho1=exp(theta);subplot(1,2,1),polar(theta,rho1)(12)⼼形线命令:>> clear >> theta=0:0.1:2*pi; >> rho1=1+cos(theta); >> subplot(1,2,1),polar(theta,rho1)练习2.21. 求出下列极限值(1)nnn n3→命令:>>syms n>>limit((n^3+3^n)^(1/n)) ans = 3(2))121(lim n n n n ++-+∞→命令:>>syms n>>limit((n+2)^(1/2)-2*(n+1)^(1/2)+n^(1/2),n,inf) ans = 0(3)x x x 2cot lim 0→命令:syms x ;>> limit(x*cot(2*x),x,0) ans = 1/2 (4))(coslimcm xx ∞→命令:syms x m ; limit((cos(m/x))^x,x,inf) ans = 1(5))111(lim 1--→exx x命令:syms x>> limit(1/x-1/(exp(x)-1),x,1) ans =(exp(1)-2)/(exp(1)-1) (6))(2lim x x xx -+∞>> limit((x^2+x)^(1/2)-x,x,inf)ans = 1/2练习2.41. 求下列不定积分,并⽤diff 验证:(1)+x dxcos 1>>Clear >> syms x y >> y=1/(1+cos(x)); >> f=int(y,x) f =tan(1/2*x) >> y=tan(1/2*x); >> yx=diff(y ,x); >> y1=simple(yx) y1 =1/2+1/2*tan(1/2*x)^2 (2)+exdx1clear syms x yy=1/(1+exp(x));f=int(y,x) f =-log(1+exp(x))+log(exp(x)) syms x yy=-log(1+exp(x))+log(exp(x)); yx=diff(y,x); y1=simple(yx) y1 = 1/(1+exp(x)) (3)dx x x ?sin 2syms x yy=x*sin(x)^2; >> f=int(y,x) f =x*(-1/2*cos(x)*sin(x)+1/2*x)-1/4*cos(x)^2-1/4*x^2 clearsyms x y y=x*(-1/2*cos(x)*sin(x)+1/2*x)-1/4*cos(x)^2-1/4*x^2; yx=diff(y,x); >> y1=simple(yx) y1 = x*sin(x)^2 (4)xdx ?sec3syms x y y=sec(x)^3;f=int(y,x) f =1/2/cos(x)^2*sin(x)+1/2*log(sec(x)+tan(x)) clear syms x yy=1/2/cos(x)^2*sin(x)+1/2*log(sec(x)+tan(x)); yx=diff(y,x); y1=simple(yx) y1 =1/cos(x)^32. 求下列积分的数值解 1)dx x-10clearsyms xy=int(x^(-x),x,0,1) y =int(x^(-x),x = 0 .. 1) vpa(y,10) ans =1.291285997 2)xdx e x cos3202?πclearsyms xy=int(exp(2*x)*cos(x)^3,x, clear syms xy=int((1/(2*pi)^(1/2))*exp(-x^2/2),x,0,1) y =7186705221432913/36028797018963968*erf(1/2*2^(1/2))*2^(1/2)*pi^(1/0,2*pi) y =22/65*exp(pi)^4-22/65vpa(ans,10)(3)dx xe21221-π>> clear >> syms x>> y=int(1/(2*pi)^(1/2)*exp(-x^2/2),0,1); >> vpa(y,14) ans =.341344746068552(4)>> clear >> syms x>> y=int(x*log(x^4)*asin(1/x^2),1,3); Warning: Explicit integral could not be found. > In sym.int at 58 >> vpa(y,14) ans = 2.45977212823752(5) >> clear >> syms x1判断下列级数的收敛性,若收敛,求出其收敛值。
【转】matlab图形句柄详解(⼀)在matlab中,每⼀个对象都有⼀个数字来标识,叫做句柄.当每次创建⼀个对象时,matlab就为它建⽴⼀个唯⼀的句柄,句柄中包含有该对象的相关信息参数,可以在后续程序中进⾏操作,改变其中的参数,以便达到不同的效果。
例如:gcf 是返回当前被激活的窗⼝的句柄。
你可以认为它就指代当前窗⼝。
figure(gcf)打开这个窗⼝。
句柄式图形常⽤函数:所有对象都有属性来定义它们的特征,正是通过设定这些属性来修正图形显⽰的⽅式。
尽管许多属性所有的对象都有,但与每⼀种对象类型(⽐如坐标轴,线,曲⾯)相关的属性列表都是独⼀⽆⼆的。
对象属性可包括诸如对象的位置、颜⾊、类型、⽗对象、⼦对象及其它内容。
每⼀个不同对象都有和它相关的属性,可以改变这些属性⽽不影响同类型的其他对象。
和每⼀种对象类型(图形,坐标轴,线,⽂本,曲⾯,补⽚和图象)相关的完整的属性列表在本章的后⾯给出。
对象属性包括属性名和与它们相联关的值。
属性名是字符串,它们通常按混合格式显⽰,每个词的开头字母⼤写,⽐如:’ LineStyle ‘ 。
但是,MATLAB识别⼀个属性时是不分⼤⼩写的。
另外,只要⽤⾜够多的字符来唯⼀地辨识⼀个属性名即可。
例如,坐标轴对象中的位置属性可以⽤ ‘ Position ‘, ‘ position ‘ ,甚⾄是 ‘ pos ‘来调⽤。
当建⽴⼀个对象时,它⽤⼀组缺省属性值,该值可以⽤两种⽅法来改变:改变默认属性值⽅法1:» Hf_1=figure( ‘color’, ‘white’ )它⽤缺省的属性值建⽴⼀个新的图形窗⼝,只是背景颜⾊被设为⽩⾊⽽不是缺省的[0.8 0.8 0.8](灰⾊)。
改变默认属性值⽅法2:为了获得和改变句柄图形对象(如上⾯的Hf_1)的属性只需要两个函数:函数get返回某些对象属性的当前值。
使⽤函数get的最简单语法是get(handle, ‘ PropertyName’ )。
1.句柄图形的功能是什么?(4分)句柄图形可以随意改变matlab生成图形的方式。
句柄图形允许你定制图形的许多特性,无论是对图形做一点小改动,还是影响所有图形输出的整体改动。
2.执行下列每一句MATLAB命令后阿A、B、C、D将显示什么结果?(24分)A=[1,2,3;4,5,6;7,8,9]B=[0,1,2;1,2,3;2,3,4]C=A+BD=A-B-13.试画出程序运行后x1、x2及卷积图形。
(12分)n1=0:4;x1=ones(1,5)n2=0:3;x2=ones(1,4)[x,n]=gghconv(x1,x2,n1,n2)4.试画出程序运行后(采样间隔=0.01)f1、f2及卷积图形。
(12分)t1=-1:0.01:3;f1=Heaviside(t1)-Heaviside(t1-2);t2=t1-1;f2=0.5.*(Heaviside(t2)-Heaviside(t2-1));[t,f]=gggfconv(f1,f2,t1,t2);5.试画出程序运行后的输出图形。
(12分)信号的波形绘制x=0:pi/20:2*pi;subplot(1,4,1);plot(x,1-sin(x));subplot(1,4,2);plot(x,1+sin(x));subplot(1,4,3);plot(x,1-cos(x));subplot(1,4,4);plot(x,1+cos(x));6.读下面两段MATLAB程序,画出图形结果,分析所示特性。
(12分)%(1)b=[1 0]; a=[0.0001 1.0001 0.0001];freqs(b,a);axis([10^(-6) 10^5+20 0.01 1.2]);%End%(2)b=[1 0 22500]; a=[1 200 20000];freqs(b,a);axis([10 10^3 10^-2 2]);%End7.读下段MATLAB程序,画出图形结果(按程序执行)。
matlab课后答案完整版ones表⽰1矩阵zeros表⽰0矩阵ones(4)表⽰4x4的1矩阵zeros(4)表⽰4x4的0矩阵zeros(4,5)表⽰4x5的矩阵eye(10,10)表⽰10x10的单位矩阵rand(4,5)表⽰4x5的伴随矩阵det(a)表⽰计算a的⾏列式inv(a)表⽰计算a的逆矩阵Jordan(a)表⽰求a矩阵的约当标准块rank(a)表⽰求矩阵a的秩[v,d]=eig(a)对⾓矩阵b=a’表⽰求a矩阵的转置矩阵sqrt表⽰求平⽅根exp表⽰⾃然指数函数log⾃然对数函数abs绝对值第⼀章⼀、5(1)b=[97 67 34 10;-78 75 65 5;32 5 -23 -59]; >> c=[97 67;-78 75;32 5;0 -12]; >> d=[65 5;-23 -59;54 7];>> e=b*ce =5271 11574-11336 6641978 3112(2)a=50:1:100⼆、1 、x=-74;y=-27;z=(sin(x.^2+y.^2))/(sqrt(tan(abs(x+y)))+pi) z =-0.09012、a=-3.0:0.1:3.0;>> b=exp(-0.3*a).*sin(a+0.3)y =0.7218 1.0474-0.2180 1.15624、a*b表⽰a矩阵和b矩阵相乘a.*b表⽰a矩阵和b矩阵单个元素相乘A(m,n)表⽰取a矩阵第m⾏,第n列A(m,:)表⽰取a矩阵第m⾏的全部元素A(:,n)表⽰取a矩阵的第n列全部元素A./B表⽰a矩阵除以b矩阵的对应元素,B.\A等价于A./BA.^B表⽰两个矩阵对应元素进⾏乘⽅运算A.^2表⽰a中的每个元素的平⽅A^2表⽰A*A例:x=[1,2,3];y=[4,5,6];z=x.^yz=1 32 729指数可以是标量(如y=2).底数也可以是标量(如x=2)5、a=1+2i;>> b=3+4i;>> c=exp((pi*i)/6)c =0.8660 + 0.5000id=c+a*b/(a+b)d =1.6353 + 1.8462i第⼆章⼆、4、(1)y=0;k=0;>> while y<3k=k+1;>> display([k-1,y-1/(2*k-1)])ans =56.0000 2.9944第三章⼆1(1) x=0:pi/10:2*pi; >> y=x-x.^3/6; >> plot(x,y)1234567-40-35-30-25-20-15-10-505(2)x=0:pi/10:2*pi; y=(exp(-x.^2/2))/2*pi;plot(x,y)012345670.20.40.60.811.21.41.6(3)x=-8:0.01:8; y=sqrt((64-x.^2)/2);plot(x,y)-8-6-4-2024680123456(4)t=0:0.1:8*pi; >> x=t.*sin(t); >> y=t.*cos(t);-25-20-15-10-50510152025-30-20-10102030例3.4x=0:pi/100:2*pi; y1=exp(-0.5*x);y2=exp(-0.5*x).*sin(2*x); plot(x,y1,x,y2)>> title('x from 0 to 2{\pi} '); >> xlabel('variable x'); >> ylabel('variable y'); >> text(1.5,0.5,'曲线y1=e^(-0.5x)'); >> text(3,0.1,'曲线y2=cos(4{\pi}x)e^{-0.5x}'); >> legend('y1','y2')1234567-0.4-0.20.20.40.60.81x from 0 to 2πvariable xv a r i a b l e y曲线y1=e (-0.5x)曲线y2=cos(4πx)e -0.5xy1y22、(1)y1=2*x-0.5;t=linspace(0,pi,100); x=sin(3*t).*cos(t); y=sin(3*t).*sin(t);>> k=find(abs(y-x)<1e-2); >> t1=t(k) t1 =0 0.7933 1.04722.0944>> z=sin(3.*(t1)).*cos(t1) z =0 0.4841 0.0000 0.0000 -0.0000>> plot(t,x,t,y,'k:',t1,z,'bp');0.511.522.533.5-1-0.8-0.6-0.4-0.200.20.40.60.81(2)subplot(1,2,1); >> scatter(x1,y1,10); >> title('y=2x-0.5'); >> subplot(1,2,2); >> scatter(x,y,10)-1-0.8-0.6-0.4-0.200.20.40.60.81-1-0.8-0.6-0.4-0.200.20.40.63、subplot(1,2,1); x=0:0.01:pi; y=sin(1./x); plot(x,y)subplot(1,2,2);fplot('sin(1./x)',[1,100])1234-1-0.8-0.6-0.4-0.200.20.40.60.81204060801000.10.20.30.44、t=0:pi:2*pi; y=1./(1+exp(-t));subplot(2,2,1);%图形窗⼝的分割bar(t,'group'); %绘制柱形图(分组) subplot(2,2,2);barh(t,'stack');%绘制柱形图(堆积) subplot(2,2,3);loglog(t,y); %函数使⽤全对数坐标,x,y 均采⽤常⽤对数刻度 subplot(2,2,4); semilogy(t,y); %函数使⽤半对数坐标,y 轴为常⽤对数刻度,x 轴仍为线性刻度1230246802468123100.5100.710-0.01810-0.0010246810-0.310-0.210-0.15、(1)theta=linspace(-pi,pi,100); ro=5.*cos(theta)+4; polar(theta,ro); (2)x=linspace(0,2*pi,100);a=1>> r=a.*(1+cos(x)); polar(x,r);3021060240902701203001503301806、(1)t=0:pi/10:2*pi;>> x=exp((-t)/20).*cos(t); >> y=exp((-t)/20).*sin(t); >> z=t; >> plot3(x,y,z);-1-0.50.51-1-0.50.5102468(2)t=0:0.01:1; x=t;>> y=t.^2; >> z=t.^3;>> plot3(x,y,z);0.20.40.60.800.20.40.60.817、x=-30:0.1:0; >> y=0:0.1:30;>> [x,y]=meshgrid(x,y); >>z=10.*sin(sqrt(x.^2+y.^2))./sqrt(1+x.^2+y.^2);>> meshc(x,y,z);绘制曲⾯图和等⾼线-30-20-10102030-4-202468、x=linspace(-3,3,100); >> y=linspace(-3,3,100); >> [x y]=meshgrid(x,y); %可以将向量转化为矩阵 >> fxy=-5./(1+x.^2+y.^2); >> i=find(abs(x)<=0.8 & abs(y)<=0.5); >> fxy(i)=NaN; >>surf(x,y,fxy) %绘制三维曲⾯图-4-224-4-224-4-3-2-19、u=linspace(1,10,100); v=linspace(-pi,pi,100);[u v]=meshgrid(u,v); x=3.*u.*sin(v); y=2.*u.*cos(v); z=4*u.^2; surf(x,y,z); shading interp;-40-20-1010200100200300400第五章⼆1、a=rand(1,30000);mean(a) %求平均数 ans =0.5010 >>b=std(a) %求标准差 b =0.2882 >> c=max(a) c =0.9999 >> d=min(a) d =3.5706e-005size(find(a>0.5))/size(a) %求⼤于0.5的随机数个数占总数的百分⽐ans =0.50322、h=[466,715,950,1422,1635]; >> w=[7.04,4.28,3.40,2.52,2.13]; >> hh=[500,900,1500]; >> ww=interp1(h,w,hh,'spline')ww =6.4903 3.5226 2.3845 3、x=linspace(1,10,50); y=log(x);f=polyfit(x,y,5); %求曲线的拟合 >> yy=polyval(f,x); >> plot(x,y,'r-',x,yy,'g.') 123456789100.511.522.55、(1)、(2) p1=[1,2,0,7]; p2=[1,-2]; p3=[1,0,5,1]; p12=conv(p1,p2); >>p=p12+[zeros(1,size(p12,2)-size(p3,2)),p3]; >> roots(p) ans =-3.4656 0.6128 + 1.6278i 0.6128 - 1.6278i 1.2400-29 291 95 19 -3 697 -13 697 1427 >>y2=polyvalm(p,a)%以矩阵a 为⾃变量 y2 =391 2084 3273 502 2693 4207 720 3775 5892 6、(1)z=fzero('3*x-sin(x)+1',0) %求x=0时附近的根 z =-0.4903 第⼋章⼆、2t=0:pi/20:2*pi; x=sin(t); y=cos(t); x1=sin(7*t); y1=cos(7*t);h=plot(x,y,x1,y1);set(h,'marker','x','linewidth',2); set(gca,'xtick',-1:0.1:1); title('篮筐')-1-0.9-0.8-0.7-0.6-0.5-0.4-0.3-0.2-0.100.10.20.30.40.50.60.70.80.91 -1-0.8-0.6-0.4-0.200.20.40.60.81篮筐3、x=0:pi/10:5*pi;y=exp(-0.2*x).*cos(x)+2; h=plot(x,y);set(gca,'color','red','linestyle','-','linewidth',3);text(5,2.4,'y=exp(-0.2*x).*cos(x)+2');02468101214161.41.61.822.22.42.62.83y=exp(-0.2*x).*cos(x)+24、t=-pi:pi/100:pi; x=cos(t); y=sin(t); z=t;h=plot(t,x,t,y,t,z);set(h,'linestyle','-','linewidth',3);-4-3-2-101234-4-3-2-101234字符串例ch='Welcome to Beijing';subch=ch(12:18) 选12~18个字符串(空格也算)ans =WELCOME TO BEIJING >> length(k)统计⼩写字母的个数ans = 14 例:已知y=1-1/2+1/3-1/4.........-1/100求y 的值y=0; >> n=100; >> for i=1:100; y=y+(-1)^(i-1)/i; end>> disp(y)0.6882绘制⼆维曲线图x=0:pi/100:2*pi; >> y1=0.2*exp(-0.5*x).*cos(4*pi*x); >> y2=1.5*exp(-0.5*x).*cos(pi*x); >> plotyy(x,y1,x,y2); 7-0.20.20123456-202绘制三维图像例:x=sint+tcost y=cost-tsint z=tt=0:pi/10:10*pi; x=sin(t)+t.*cos(t); y=cos(t)-t.*sin(t); z=t; plot3(x,y,z); axis([-30 30 -30 30 0 35]); 坐标轴的最⼤值与最⼩值title('line in 3-D space'); 图形的题⽬ >> xlabel('x');ylabel('y');zlabel('z'); 标注坐标>> grid on; 加⽹格线 -30-20-10102030-20205101520253035xline in 3-D spaceyz三维例]2/,0[],,0[,cos sin 22ππ∈∈+=y x y x z [x,y]=meshgrid(0:pi/100:pi,0:pi/100:pi/2);>> z=sin(x.^2)+cos(y.^2);>> mesh(x,y,z);>> axis([0 4 0 1.8 -1.5 1.5]); 012340.511.5-1.5-1-0.500.511.5例3.16t=0:pi/20:2*pi; subplot(1,2,1);[x,y,z]=cylinder(sin(t),30);surf(x,y,z); 绘制三维曲⾯图subplot(1,2,2);>> [x,y,z]=peaks(100);>> mesh(x,y,z); 绘制三维⽹格图-11-10100.20.40.60.81-55-505-10-5510多项式求导例:f(x)=1/x^2+5 p=[1];>> q=[1,0,5];>> [p,q]=polyder(p,q)注:c=conv(a,b) 表⽰a 多项式与b 多项式乘积[p,r]=deconv(a,b) 表⽰a 多项式与b 多项式相除其中p 为商向量 r 为余数向量p=polyder(p) 表⽰求p 的导数 p=poleder(p,q) 表⽰求p 乘以q 的导数[p,q]=poleder(p,q) 表⽰p 除以q 的导数多项式求根例:f(x)=2x^4-12x^3+3x^2+5 p=[2,-12,3,0,5]; >> x=roots(p); >> p=[2,-12,3,0,5]; x=roots(p) 求⽅程f(x)=0的根 x =5.7246 0.8997 -0.3122 + 0.6229i -0.3122 - 0.6229i>> g=poly(x) 已知多项式的根求多项式 g =1.0000 -6.0000 1.5000 -0.00002.5000符号求导例7.3x=a(t-tsint)y=b(1-cost) 求y 对x 的⼀阶导数 syms x y a b t;>> f21=a*(t-sin(t)); >> f22=b*(1-cos(t));>> diff(f22)/diff(f21) 求y 对x 的⼀阶导数ans =b*sin(t)/a/(1-cos(t))注:diff(f1,x,2) 表⽰f1对x 的⼆阶导数diff (f3,x )表⽰z 对x 的偏导 diff (f3,y )表⽰z 对y 的偏导求不定积分int(f) 求f 的不定积分 f1=int(f,a,b) 求f 在a ,b 之间的定积分eval (f1)计算积分值符号求极限例7.2 syms x h>> f=(sin(x+h)-sin(x))/h;>> limit(f,h,0) h 趋向于0ans =cos(x)例2f=sym('(1+t/x)^x');limit(f,inf) f趋向于⽆穷ans =exp(t)例3f=sym('x*(sqrt(x^2+1)-x)');limit(f,sym('x'),inf,'left') x 趋向于正⽆穷ans =1/2⼤⼩写ch='Welcome to Beijing';subch=ch(12:18)subch =Beijing>> k=find(ch>='A'&ch<='Z'); ch(k)=ch(k)-('A'-'a');>> char(ch)ans =welcome to beijing>> length(k)ans =2。
第1章MATLAB概论1.1与其他计算机语言相比较,MA TLAB语言突出的特点是什么?MA TLAB具有功能强大、使用方便、输入简捷、库函数丰富、开放性强等特点。
1.2 MA TLAB系统由那些部分组成?MA TLAB系统主要由开发环境、MA TLAB数学函数库、MA TLAB语言、图形功能和应用程序接口五个部分组成。
1.3 安装MA TLAB时,在选择组件窗口中哪些部分必须勾选,没有勾选的部分以后如何补安装?在安装MA TLAB时,安装内容由选择组件窗口中个复选框是否被勾选来决定,可以根据自己的需要选择安装内容,但基本平台(即MA TLAB选项)必须安装。
第一次安装没有选择的内容在补安装时只需按照安装的过程进行,只是在选择组件时只勾选要补装的组件或工具箱即可。
1.4 MA TLAB操作桌面有几个窗口?如何使某个窗口脱离桌面成为独立窗口?又如何将脱离出去的窗口重新放置到桌面上?在MA TLAB操作桌面上有五个窗口,在每个窗口的右上角有两个小按钮,一个是关闭窗口的Close按钮,一个是可以使窗口成为独立窗口的Undock按钮,点击Undock按钮就可以使该窗口脱离桌面成为独立窗口,在独立窗口的view菜单中选择Dock ……菜单项就可以将独立的窗口重新防止的桌面上。
1.5 如何启动M文件编辑/调试器?在操作桌面上选择‚建立新文件‛或‚打开文件‛操作时,M文件编辑/调试器将被启动。
在命令窗口中键入edit命令时也可以启动M文件编辑/调试器。
1.6 存储在工作空间中的数组能编辑吗?如何操作?存储在工作空间的数组可以通过数组编辑器进行编辑:在工作空间浏览器中双击要编辑的数组名打开数组编辑器,再选中要修改的数据单元,输入修改内容即可。
1.7 命令历史窗口除了可以观察前面键入的命令外,还有什么用途?命令历史窗口除了用于查询以前键入的命令外,还可以直接执行命令历史窗口中选定的内容、将选定的内容拷贝到剪贴板中、将选定内容直接拷贝到M文件中。
第10章 MATLAB图形对象句柄
习题10
一、选择题
1.MA TLAB图形系统的根对象是指()。
A
A.计算机屏幕B.图形窗口
C.坐标轴D.用户界面对象
2.以下不正确的选项是()。
D
A.坐标轴是图形窗口对象的子对象
B.图形对象的句柄变量相当于对象名
C.可以通过对象的句柄来设置或获取对象的属性
D.gcf函数可以获取当前对象的句柄
3.使用figure 函数建立图形窗口时,默认的标题是()。
C
A.图形窗口n(n是数字)B.Fig n(n是数字)
C.Figure n(n是数字)D.Figure Window n(n是数字)
4.用于决定坐标轴对象是否带边框的属性是()。
A
A.Box B.Grid C.Position D.Font 5.下列命令中,除一条命令外其他三条命令等价,这一条命令是()。
B
A.line(x,y,'Color','r'); B.line(x,y,'r');
C.plot(x,y,'Color','r'); D.plot(x,y,'r');
6.命令patch([0,1/2,1], [0,tan(pi/3)/2,0], [1,0,0])执行后得到的图形是()。
C
A.红色的等腰三角形B.绿色的等腰三角形
C.红色的等边三角形D.白色的四边形
二、填空题
1.H代表一根曲线,要设置曲线的属性可以使用函数,要获取曲线的属性可以使用函数。
set(H,属性名,属性值),get(H,属性名)
2.MA TLAB中表示颜色可以用表示,也可以用表示。
字符,RGB三元组
3.用于标识图形对象的属性是属性,可以通过函数获取该属性所对应图形对象的句柄。
在屏幕对象及其子对象中查找标识符为ppp的对象,并返回其句柄,可使用命令。
Tag,findobj,hf=findobj(0,'Tag','ppp')
4.使用axes 函数可以在中创建对象。
当前图形窗口,坐标轴
5.下列命令执行后得到的图形是。
要绘制圆,则需要将该图形的属性设置为1。
正方形,Curvature
2
>> rectangle('Position',[0,0,30,30])
>> axis equal
三、应用题
1.利用图形对象绘制下列曲线,要求先利用默认属性绘制曲线,然后通过图形句柄操作来改变曲线的颜色、线型和线宽,并利用文字对象给曲线添加文字标注。
(1)x
y sin 15+= (2)5x 1,-5x x y 2≤≤++= (3)⎪⎪⎩
⎪⎪⎨⎧≤≤-==22,)2sin(2)cos(t t y t x ππ (4)θρ2sin = 2.利用图形对象绘制下列三维图形。
(1)⎪⎩⎪⎨⎧≤≤=-=+=300,5.1)cos (sin 2)sin (cos 2t t
z t t t y t t t x (2)⎪⎪⎩⎪⎪⎨⎧≤≤-≤≤-===33,22,22
v u v
z u y u x (3)22e y x xy z --= (4))sin(5),(22xy y x y x f -+=
(1)
t=0:0.1:30;
x=2*(cos(t)+t.*sin(t));
y=2*(sin(t)-t.*cos(t));
z=1.5*t;
axes('view',[-37.5,30]);
line(x,y,z)
axis equal
(2)
u=-2:0.1:2;
v=-3:0.1:3;
[u,v]=meshgrid(u,v);
x=u.*u/2;
y=u;
z=v;
axes('view',[-37.5,30]);
hs=surface(x,y,z);
3.绘制一个长方形,将长方形3等份,每等份分别着不同的颜色。
答案:(错误)
x=[1,2,3;2,3,4;2,3,4;1,2,3];
y=[1,1,1;1,1,1;5,5,5;5,5,5];
mc=jet(4);
c(1,1:4)=mc(1,:);
c(1,1:4)=mc(2,:);
c(1,1:4)=mc(3,:);
patch(x,y,c);
axis([0,5,0,5]);
grid
vert=[1,1;2,1;3,1;4,1;4,5;3,5;2,5;1,5];
fac=[1,2,7,8;2,3,6,7;3,4,5,6];
mc=jet(3);
patch('Faces',fac,'Vertices',vert,'FaceVertexCData',mc,'FaceC olor','Flat');
axis([0,5,0,5]);
grid
4.生成一个长方体,每小面着不同颜色,并进行光照和材质处理。
3。