刘卫国全套配套课件matlab程序设计与应用第3版第10章matlab图形对象句柄

上传人:E**** 文档编号:100441981 上传时间:2019-09-23 格式:PPTX 页数:39 大小:394.03KB
返回 下载 相关 举报
刘卫国全套配套课件matlab程序设计与应用第3版第10章matlab图形对象句柄_第1页
第1页 / 共39页
刘卫国全套配套课件matlab程序设计与应用第3版第10章matlab图形对象句柄_第2页
第2页 / 共39页
刘卫国全套配套课件matlab程序设计与应用第3版第10章matlab图形对象句柄_第3页
第3页 / 共39页
刘卫国全套配套课件matlab程序设计与应用第3版第10章matlab图形对象句柄_第4页
第4页 / 共39页
刘卫国全套配套课件matlab程序设计与应用第3版第10章matlab图形对象句柄_第5页
第5页 / 共39页
点击查看更多>>
资源描述

《刘卫国全套配套课件matlab程序设计与应用第3版第10章matlab图形对象句柄》由会员分享,可在线阅读,更多相关《刘卫国全套配套课件matlab程序设计与应用第3版第10章matlab图形对象句柄(39页珍藏版)》请在金锄头文库上搜索。

1、第10章 MATLAB图形对象句柄 10.1 图形对象及其句柄 10.2 图形窗口与坐标轴 10.3 低层绘图操作 10.4 光照和材质处理,10.1 图形对象及其句柄,10.1.1 图形对象 在MATLAB中,每一个具体的图形都是由若干个不同的图形对象组成的。所有的图形对象都按父对象和子对象的方式组成层次结构,10.1.2 图形对象句柄的使用,图形对象句柄是对象,句柄相当于对象名,可以是一个图形的标识。 x=0:pi/10:2*pi; y=sin(x); h0=plot(x,y,r) %曲线对象的句柄 通过图形句柄可以访问图形对象的属性,例如: h0.Color,MATLAB提供了若干个函数

2、用于获取已有图形对象的句柄,常用的函数如下。 gcf:获取当前图形窗口的句柄(get current figure)。 gca:获取当前坐标轴的句柄(get current axis)。 gco:获取最近被选中的图形对象的句柄(get current object)。 findobj:按照指定的属性来获取图形对象的句柄。 例如: h1=gcf,10.1.3 图形对象属性,1属性名与属性值 例如,LineStyle是曲线对象的一个属性名,它的值决定着线型,取值可以是-、:、-.、-或none。 2属性的操作 可以通过set函数重新设置对象属性,同时也可以通过get函数获取这些属性值。 set(句

3、柄,属性名1,属性值1,属性名2,属性值2,) x=0:pi/10:2*pi; h=plot(x,sin(x); set(h,Color,r,LineStyle,:,Marker,p),2属性的操作 get函数的调用格式为: V=get(句柄,属性名) 其中,V是返回的属性值。如果在调用get函数时省略属性名,则将返回句柄所有的属性值。 用get函数来获得上述曲线的属性值。例如: col=get(h,Color) V=get(0,ScreenSize),3图形对象的公共属性 Children属性。 Parent属性。 Tag属性 Type属性。 UserData属性 Visible属性 But

4、tonDownFcn属性。 CreateFcn属性 DeleteFcn属性,例10-1 在同一坐标下绘制红、绿两根不同曲线,希望获得绿色曲线的句柄,并对其进行设置。 x=0:pi/50:2*pi;y=sin(x);z=cos(x); plot(x,y,r,x,z,g) %绘制两根不同的曲线 Hl=get(gca,Children); %获取两曲线句柄向量Hl for k=1:size(Hl) if get(Hl(k),Color)=0,1,0 %0,1,0代表绿色 Hlg=Hl(k); %获取绿色线条句柄 end end pause %便于观察设置前后的效果 set(Hlg,LineStyle

5、,:,Marker,p) %对绿色线条进行设置,10. 2 图形窗口与坐标轴,10.2.1 图形窗口对象 建立图形窗口对象使用figure函数,其调用格式为: 句柄变量=figure(属性名1,属性值1,属性名2,属性值2,) MATLAB通过对属性的操作来改变图形窗口的形式,也可以使用figure函数按MATLAB默认的属性值建立图形窗口: 句柄变量=figure 调用figure函数来显示该窗口,并将之设定为当前窗口,调用格式为: figure(窗口句柄),图形窗口属性: MenuBar属性 Name属性 NumberTitle属性 Resize属性 Position属性 Units属性

6、Color属性 Pointer属性,对键盘及鼠标响应属性: KeyPressFcn(键盘键按下响应)、WindowButtonDownFcn(鼠标键按下响应) WindowButtonMotionFcn(鼠标移动响应) WindowButtonUpFcn(鼠标键释放响应) 这些属性所对应的属性值可以为用MATLAB编写的函数名或命令名,表示一旦键盘键或鼠标键按下之后,将自动调用给出的函数或命令。,例10-2 建立一个图形窗口。该图形窗口没有菜单条,标题名称为“图形窗口示例”,起始于屏幕左下角、宽度和高度分别为300像素点和150像素点,背景颜色为绿色,且当用户从键盘按下任意一个键时,将显示“H

7、ello,World!”字样。 命令如下: hf=figure(Color,0,1,0,Position,1,1,300,150,. Name,图形窗口示例,NumberTitle,off,MenuBar,none,. KeyPressFcn,disp(Hello,World!);,例10-3 分别在4个不同的图形窗口绘制出正弦、余弦、正切、余切曲线。要求先建立一个图形窗口并绘图,然后每关闭一个再建立下一个,直到建立第4个窗口并绘图。 x=linspace(0,2*pi,60); y=sin(x); z=cos(x); t=tan(x); ct=1./(t+eps); %命令组待用 C4=fi

8、gure(Name,cotangent(x),NumberTitle,. off);plot(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); %先创建一个图形窗口并绘制曲线 figure(Name,sin(x),DeleteFcn,C2,Number

9、Title,off) plot(x,y); axis(0,2*pi,-1,1),10. 2 图形窗口与坐标轴,10.2.2 坐标轴对象 坐标轴对象是图形窗口的子对象,每个图形窗口中可以定义多个坐标轴对象,但只有一个坐标轴是当前坐标轴,在没有指明坐标轴时,所有的图形图像都是在当前坐标轴中输出。 建立坐标轴对象使用axes函数,其调用格式为: 句柄变量=axes(属性名1,属性值1,属性名2,属性值2,) 按MATLAB默认的属性值在当前图形窗口创建坐标轴: axes 句柄变量=axes,10.2.2 坐标轴对象 坐标轴对象的属性: Box属性 GridLineStyle属性 Position属性

10、 Units属性 Title属性 ColorOrder属性 XLabel、YLabel、ZLabel属性 XLim、YLim、ZLim 属性 XScale、YScale、ZScale 属性,例10-4 利用坐标轴对象实现图形窗口的任意分割。 clf; %清除当前图形窗口的内容 x=linspace(0,2*pi,20); y=sin(x); axes(Position,0.2,0.2,0.2,0.7,GridLineStyle,-.) plot(y,x);title(sin(x)-1); axes(Position,0.4,0.5,0.2,0.1) stairs(x,y);title(sin(

11、x)-2); axes(Position,0.55,0.6,0.25,0.3) stem(x,y);title(sin(x)-3);axes(Position,0.55,0.2,0.25,0.3) x,y=meshgrid(-8:0.5:8); z=sin(sqrt(x.2+y.2)./sqrt(x.2+y.2+eps); mesh(x,y,z); title(mesh(x,y,z),10.3 低层绘图操作,10.3.1 曲线对象 曲线对象是坐标轴的子对象,它既可以定义在二维坐标系中,也可以定义在三维坐标系中。建立曲线对象使用line函数,其调用格式为: 句柄变量=line(x,y,z,属性名

12、1,属性值1,属性名2,属性值2,) Color属性 LineStyle属性:定义线型,默认值为-,即实线。 LineWidth属性:定义线宽,默认值为0.5磅。 Marker属性:定义数据点标记符号,默认值为none。 MarkerSize属性:定义数据点标记符号的大小,默认值为6磅。 XData、YData、ZData属性,例10-5 利用曲线对象制曲线 t=0:pi/100:pi/2; y1=sin(2*pi*t); y2=sqrt(3)/2*exp(-4*t).*sin(4*sqrt(3)*t+pi/3); axes(GridLineStyle,:,XLim,0,pi/2,YLim,-

13、1,1) line(XData,t,YData,y1,LineWidth,1) line(t,y2) grid on,10.3.2 曲面对象 建立曲面对象使用surface函数,其调用格式为: 句柄变量=surface(x,y,z,属性名1,属性值1,属性名2,属性值2,) EdgeColor属性 FaceColor属性 LineStyle属性:定义线型,默认值为-,即实线。 LineWidth属性:定义线宽,默认值为0.5磅。 Marker属性:定义数据点标记符号,默认值为none。 MarkerSize属性:定义数据点标记符号的大小,默认值为6磅。 XData、YData、ZData属性,

14、例10-6 利用曲面对象绘制三维曲面z=sinycosx 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),10.3.3 文本对象,使用text函数可以根据指定位置和属性值添加文本说明,并保存句柄。该函数的调用格式为: 句

15、柄变量=text(x,y,z,说明文字,属性名1,属性值1,属性名2,属性值2,) Color属性 String属性 Interpreter属性 FontSize属性 Rotation属性,例10-7 利用曲线对象绘制 并利用文字对象完成标注。 theta=-pi:.1:pi; y1=sin(theta); y2=cos(theta); h=line(theta,y1,LineStyle,:,Color,g); line(theta,y2,LineStyle,-,Color,b) xlabel(-pi leq theta leq pi) ylabel(sintheta) title(Plot of sintheta) text(-pi/4,sin(-pi/4),leftarrow sin(-pidiv4),FontSize,12) set(h,Color,r,LineWidth,2) %改变曲线1

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号