预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共41页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

句柄绘图可以对图形各基本对象进行更为细腻的修饰,可以产生更为复杂的图形,而且为动态图形的制作奠定了基础。 高级绘图与低级绘图的区别9.1句柄图形的概念句柄图形的功能 可以随意改变matlab生成图形的方式。 句柄图形允许你定制图形的许多特性,无论是对图形做一点小改动,还是影响所有图形输出的整体改动。 句柄图形的特性是高级绘图函数无法实现的。9.2图形对象和句柄说明: 根:图形对象的根,对应于计算机屏幕,根只有一个,所有图形对象都是根的后代。 图形窗口:根的子代,窗口的数目不限,所有图形窗口都是根屏幕的子代,除根之外,其它对象则是窗的后代。 界面控制:图形窗口的子代,创建用户界面控制对象,使得用户可采用鼠标在图形上作功能选择,并返回句柄。界面菜单:图形窗口的子代,创建用户界面菜单对象 轴:图形窗口的子代,创建轴对象,并返回句柄,线、面、字、块、像的父辈 线:轴的子代,创建线对象 面:轴的子代,创建块对象 字:轴的子代,创建字对象 块:轴的子代,创建块对象 像:轴的子代,创建图像对象图形对象 系统结构窗口对象 2.创建图形对象的低级函数uimenu创建用户界面菜单 调用格式: h=uimenu(‘property’,value) property/value确定菜单形式。 axes创建轴对象 h=axes(‘property’,value) 定义轴对象的位置与大小line创建线对象 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(x);x为图像矩阵 text标注文字 h=text(x,y,’string’) 每个低级函数只能创建一个图形 对象,并将它们置于适当(当前)的父辈对象中。3.图形对象的属性在高级绘图中对图形对象的描述一般是省缺的或由高级绘图函数自动设置的,因此对用户几乎是不透明的。 但句柄绘图中上述图形对象都是用户需要经常使用的,可以用图形句柄设置图形对象的属性。什么是句柄? 句柄是图形对象的标识代码。 含有图形对象的各种必要的属性信息。 各图形对象的句柄数据格式: 根-屏幕0 图形窗口整数,表示图形窗口数 其它对象对应的符点数所有能创建图形对象的matlab函数都可给出所创建图形对象的句柄 例:创建1号窗口,返回句柄 h=figure(1) h=1返回值为窗口号数 变量h是句柄值—整数 例:创建线对象 h=line(1:6,1:6)建立唯一的对象句柄 变量h是句柄值—浮点数句柄属性的设置与修改 get:获得句柄图形对象的属性和返回某些 对象的句柄值 set:改变图形对象的属性 专用函数: gcf:当前窗口对象的句柄GetCurrentFigure gca:当前轴对象的句柄GetCurrentAxes gco:当前对象的句柄GetCurrentObject操作格式: h=gcf将当前窗口对象的句柄返回h get(h)或get(gcf)查阅当前窗口对象的属性 delete(gcf)删除当前窗口的属性 例:h=line(x,y) get(h) 获取对象属性 get(get(gca,’children’)获取当前轴的子代对象属性例:创建一个线对象并返回线对象的句柄值 h1=line([0:10],[0:10]) h1= 57.0001 h1为句柄的代码值 查阅线对象的属性名称和属性值 get(h1) Color=[110] EraseMode=normal LineStyle=- LineWidth=[0.5] MarkerSize=[6] Xdata=[(1by11)] Ydata=[(1by11)] Zdata=[] 根据轴是线对象的父代,可查轴的句柄 get(gca)设置线条和窗口的颜色 set(h1,'color',[100]) set(h1,'color',[10.50])设置当前图形窗口颜色 set(gcf,'color',[0.50.50.5]) set(gcf,'color',[0.50.60.8])例:作正弦、余弦曲线,将正弦曲线改为虚 线,将余弦曲线幅度减为1/2高度,如何用 句柄实现。 x=0:2*pi/180:2*pi; y1=sin(x);y2=cos(x); plot(x,y1,x,y2,x,zeros(size(x)),'w:')首先查询各对象的属性 get(gcf) …… h=get(gcf,'children') h= 60.0004 hh=get(gca,'children') hh= 70.0004 69.0