- 1、本文档共74页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第9章 MATLAB图形句柄 9.1 图形对象及其句柄 9.2 图形窗口与坐标轴 9.3 低层绘图操作 第四章已介绍很多MATLAB高层绘图函数,这些函数都是将不同的曲线或曲面绘制在图形窗口中,而图形窗口也就是由不同图形对象(如坐标轴、曲线、曲面或文字等)组成的图形界面。 MATLAB给每个图形对象分配一个标识符,称为句柄,以后可以通过该句柄对该图形对象的属性进行设置,也可以获取有关属性,从而能够更加自主地绘制各种图形。 直接对图形句柄进行操作的绘图方法称为低层绘图操作。相对于高层绘图,低层绘图操作控制和表现图形的能力更强,事实上,MATLAB的高层绘图函数都是利用低层绘图函数建立起来的,相当于系统为用户做了许多细节性的工作,用起来很方便。 但有时单靠高层绘图不能满足要求,例如,绘制特殊图形、建立图形用户界面等,需要对图形句柄操作。 9.1 图形对象及其句柄 1.图形对象 MATLAB中的每一个具体的图形都是由若干个不同的图形对象组成的。 所有的图形对象都按父对象和子对象的方式组成层次结构,如图9-1。 2.图形对象句柄 MATLAB在创建每一个图形对象时,都为该对象分配唯一的一个值,称其为图形对象句柄(Handle)。句柄是图形对象的唯一标识符,不同对象的句柄不可能重复和混淆。 计算机屏幕作为根对象由系统自动建立,其句柄值为0,而图形窗口对象的句柄值为一正整数,并显示在该窗口的标题栏,其他图形对象的句柄为浮点数。MATLAB提供了若干个函数用于获取已有图形对象的句柄。 例9-1 绘制曲线并查看有关对象的句柄。 clc;clear;close all; x=linspace(0,2*pi,30); y=sin(x); h0=plot(x,y,rx) %曲线对象的句柄; h1=gcf %图形窗口句柄; h2=gca %坐标轴句柄; h3=findobj(gca,Marker,x) %坐标轴上曲线的句柄; 3. 图形对象属性 1.属性名与属性值 MATLAB给每种对象的每一个属性规定了一个名字,称为属性名,而属性名的取值称为属性值。 在属性名的写法中,不区分字母的大小写,而且在不引起歧义的前提下,属性名不必全写。如,用lines代替LineStyle。此外,属性名要用单撇号括起来。 2.属性的操作 当创建一个对象时,必须给对象的各种属性赋予必要的属性值,否则,系统自动使用缺省属性值。用户可以通过set函数重新设置对象属性,同时也可以通过get函数获取这些属性值。 set函数的调用格式为: set(句柄,属性名1,属性值1,…) 其中句柄用于指明要操作的图形对象。如果在调用set函数时省略全部属性名和属性值,则将显示出句柄所有的允许属性。 绘制二维曲线时,通过选择不同的选项可以设置曲线的颜色、线型和数据点的标记符号,下面用图形句柄操作来实现。 绘制正弦曲线的程序如下: clc;clear;close all; x=0:pi/10:2*pi; h=plot(x,sin(x)) set(h,color,r,linestyle,:,Marker,p) clc;clear;close all; x=0:pi/10:2*pi; plot(x,sin(x),rp:); 用图形句柄操作的方法绘制以上正弦曲线时,先用缺省属性绘制曲线并保存曲线句柄,然后通过改变曲线的属性来设置曲线的颜色、线型和数据点的标记符号。 当然,还有很多其他属性,可对曲线作进一步的控制。 用set函数显示句柄所有的允许属性: clc;clear;close all; x=0:pi/10:2*pi; h=plot(x,sin(x)) set(h) get函数的调用格式为: V=get(句柄,属性名) 其中V是返回的属性值。 用get函数获取上述正弦曲线的属性值: clc;clear;close all; x=0:pi/10:2*pi; h=plot(x,sin(x)) set(h,color,r,linestyle,:,Marker,p) col=get(h,color) 如果在调用get函数时省略属性名,则将返回句柄所有的属性值。 clc;clear;close all; x=0:pi/10:2*pi; h=plot(x,sin(x)) s
文档评论(0)