资源描述:
《matlab5 matlab教程》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、第五讲matlab句柄绘图——matlab语言的句柄绘图可以对图形各基本对象进行更为细腻的修饰,可以产生更为复杂的图形,而且为动态图形的制作奠定了基础。高层绘图与底层绘图的区别高层绘图函数——是对整个图形进行操作的,图形每一部分的属性都是按缺省方式设置的,充分体现了matlab语言的实用性。底层绘图函数——可以定制图形,对图形的每一部分进行控制,用户可以用来开发用户界面以及各专业的专用图形。充分体现了matlab语言的开发性一、什么是句柄图形句柄图形:利用底层绘图函数,通过对对象属性的设置(Ha
2、ndleGraphics)与操作实现绘图。句柄图形中所有图形操作都是针对图形对象而言的。句柄图形充分体现了面向对象的程序设计。句柄图形的功能句柄图形可以随意改变matlab生成图形的方式。句柄图形允许你定制图形的许多特性,无论是对图形做一点小改动,还是影响所有图形输出的整体改动。句柄图形的特性高层绘图函数是无法实现的二、图形对象和句柄图形对象——图形系统中最基本、最底层的单元引例:x=0:2*pi/180:2*pi;y1=sin(2*x);y2=cos(2*x);plot(x,y1,x,y2)父
3、对象子对象图形对象的基本要素以根屏幕为先导图形对象之间的关系为父代与子代的关系窗口1窗口n窗口2界面控制界面菜单轴线面字块像根屏幕说明:根:图形对象的根,对应于计算机屏幕,根只有一个,其它所有图形对象都是根的后代。图形窗口:根的子代,窗口的数目不限,所有图形窗口都是根屏幕的子代,除根之外,其它对象则是窗的后代。界面控制:图形窗口的子代,创建用户界面控制对象,使得用户可采用鼠标在图形上作功能选择,并返回句柄。界面菜单:图形窗口的子代,创建用户界面菜单对象轴:图形窗口的子代,创建轴对象,并返回
4、句柄,线面字块像的父辈线:轴的子代,创建线对象面:轴的子代,创建块对象字:轴的子代,创建字对象块:轴的子代,创建块对象像:轴的子代,创建图像对象窗口对象线对象轴对象面对象轴对象像对象块对象线对象文字对象2.创建图形对象的底层函数figure创建图形窗口调用格式:h=figure(n)n为窗口序号uicontrol图形界面控制调用格式:h=uicontrol(‘property’,value)property/value确定控制类型uimenu创建用户界面菜单调用格式:h=uimenu
5、(‘property’,value)property/value确定菜单形式。axes创建轴对象h=axes(‘property’,)定义轴对象的位置与大小left,bottomwidth,heightline创建线对象h=line(x,y,z)patch创建块对象h=patch(x,y,z,c)x,y,z定义多边形,c确定填充颜色。surface创建面对象h=surface(x,y,z,c)x,y,z三维曲面坐标,c颜色矩阵。二维画线三维画线image显示图象h=image
6、(x);x为图像矩阵text标注文字h=text(x,y,’string’)每个底层函数只能创建一个图形对象,并将它们置于适当的父辈对象中。确定标注位置标注字符串3.图形对象的属性※图形对象是由属性来描述的例如:figure大小位置[11640480]颜色[000]省缺linea.x,y数据;b.线的颜色c.线型;d.线宽※在高层绘图中对图形对象的描述一般是省缺的或由高层绘图函数自动设置的,因此对用户来说几乎是不透明的。※但句柄绘图中上述图形对象都是用户需要经常使用的,所以要作到心中有数
7、,用句柄设置图形对象的属性。什么是句柄?句柄是图形对象的标识代码,标识代码含有图形对象的各种必要的属性信息。各图形对象的句柄数据格式:根屏幕0图形窗口整数,表示图形窗口数其它对象对应的符点数4.句柄(handle)与句柄操作所有能创建图形对象的matlab函数都可给出所创建图形对象的句柄例:创建1号窗口,返回句柄h=figure(1)h=1返回值为窗口号数例:h=lien(1:6,1:6)创建线对象的同时也建立了一个唯一的句柄变量h是句柄值——符点数句柄属性的设置与修改get:获得句柄图形对象的
8、属性和返回某些对象的句柄值set:改变图形对象的属性专用函数:gcf:当前窗口对象的句柄GetCurrentFiguregca:当前轴对象的句柄GetCurrentAxes二、图形对象属性的获得与设置操作格式:h=gcf将当前窗口对象的句柄返回hget(h)或get(gcf)查阅当前窗口对象的属性delete(gcf)删除当前窗口的属性例:h=line(x,y)get(h)get(get(gca,’children’)轴的子代例:创建一个线对象并返回线对象的句柄值h1=line([0:10],[