第8章 matlab图形句柄

合集下载

第8章MATLAB图形用户界面设计

第8章MATLAB图形用户界面设计

例5.29 利用曲线对象绘制 y1 sin 和 y2 cos 并 利用文字对象完成标注。 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('sin(\theta)') title('Plot of sin(\theta)') text(-pi/4,sin(-pi/4),'\leftarrow sin(-\pi\div4)','FontSize',12) set(h,'Color','r','LineWidth',2) %改变曲线1的颜色和线宽
例5.30 利用曲面对象绘制三维曲面z=sin(y)cos(x)。
程序如下: 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');

MATLAB图形对象句柄命令

MATLAB图形对象句柄命令

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图形句柄详解(一)

【转】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’ )。

图形句柄

图形句柄

0
-0.2
-0.4
0
2
4
6
8
10
12
14
五、创建图形对象函数
1、创建图形窗口
figure
调用格式: H=figure(n)
n为窗口序号
例:创建1号窗口,并返回句柄。
>>H=figure(1) H=1
返回值为窗口号数
2、创建轴对象
axes
left, bottom H=axes(‘property’, ) width,height
变量H是句柄值——浮点数
1 0.8 0.6 0.4 0.2 0 -0.2 -0.4 -0.6 -0.8 -1
0
1
2
3
4
5
6
7
4、标注文字
text
H=text(x,y,’string’)
确定标注位置 标注字符串
每个函数只能创建一个图形对象, 并将它们置于适当的父辈对象中。
图形对象的基本要素以根屏幕为先导
根屏幕 父对象
窗口1
窗口2
……
窗口n
界面控制
界面菜单

线




子对象
图形对象之间的关系为父代与子代的关系
窗口对象
1 0.8 0.6 0.4 0.2 0
轴对象 线 对 象
图形对象句柄:
根屏幕(Root)句柄总是数字0; 图形窗口( Figure )的句柄总是正 整数,用它来标识图形窗的序号。 其它图形对象的句柄为浮点数。
第五节 图形句柄
一、matlab句柄绘图的特点
——matlab语言的句柄绘图可以对 图形各基本对象进行更为细腻 的修饰,可以产生更为复杂的 图形,而且为动态图形的制作 奠定了基础。

MATLAB句柄图形

MATLAB句柄图形

句柄图形句柄图形对象句柄图形是对底层图形例程集合的总称,实际上是进行生成图形的工作句柄图形的概念:一幅图的每一组成部分是一个对象,每一个对象有一系列句柄和它相关,每一个对象又按需要可以改变属性1、图形框架窗口对象(Figure)(1)、绘制图形的图形框架窗口对象gca:获得当前坐标轴对象的句柄gcbf:获得当前正在执行调用的图形对象的句柄gcbo:获得当前正在执行调用的对象的句柄gcf:获得当前图形对象的句柄gco:获得当前对象的句柄get(gcf) %由于当前状态下不存在图形窗口,系统生成新的图形窗口(2)、核心(Core)对象核心对象:包括直线、文本和特殊对象(光、图像和面图)等基本的绘图命令坐标系对象:包括线、面图和等高线图等描述的数据对象MATLAB中创建核心对象的函数axes:坐标轴image:MATLAB中的图像light:光源line:二维图形中最基本的图形对象patch:按指定方式填充多边形rectangle:具有可设置边界和表面颜色的二维图形对象surface:图形表面text:图形中的文本[x y]=meshgrid([-2:0.4:2]);Z=x.*exp(-x.^2-y.^2);fh=figure('Position',[350 275 600 450],'Color','w');ah=axes('Color',[0.8 0.8 0.8],'XTick',[-2 -1 0 1 2],...'YTick',[-2 -1 0 1 2]);sh=surface('XData',x,'YData',y,'ZData',Z,...'FaceColor',get(ah,'Color')+0.1,...'EdgeColor','k','Marker','o',...'MarkerFaceColor',[0.5 1 0.85]);view(3)(3)、绘图(Plot)对象绘图对象的父对象可以是坐标轴对象或是群对象MATLAB中绘图对象及其绘图命令areaseries:用于创建area图barseries:用于创建bar图contourgroup:用于创建contour图errobarseries:用于创建errorbar图lineseries:提供给绘制线型图的plot和plot3等函数使用quivergroup:用于创建quiver和quiver3图形scattergroup:用于创建scatter和scatter3图形stairseries:用于创建阶梯图形stemseries:用于创建stem和stem3图形surfaceplot :提供给surf和mesh群函数使用[x y z]=peaks;[c h]=contour(x,y,z);set(h,'LineWidth',3,'LineStyle',':')(4)、注释对象图形编辑工具栏Insert菜单注释函数x=-2*pi:pi/12:2*pi;y=x.^2;subplot(2,2,1:2)plot(x,y)h1=subplot(223);y=x.^4;plot(x,y)h2=subplot(224)y=x.^5;plot(x,y)%定义注释矩形的位置和大小p1=get(h1,'Position');t1=get(h1,'TightInset');p2=get(h2,'Position');t2=get(h2,'TightInset');x1=p1(1)-t1(1);y1=p1(2)-t1(2);x2=p2(1)-t2(1);y2=p2(2)-t2(2);w=x2-x1+t1(1)+p2(3)+t2(3);h=p2(4)+t2(2)+t2(4);%创建注释矩阵来环绕下面两个子图annotation('rectangle',[x1 y1 w h],...'FaceAlpha',0.2,'FaceColor','red','EdgeColor','red');通用函数get和set1、get函数get(handle,’PropertyName’):得到对象的属性及其属性值Hf_1=figure('color','w')p=get(Hf_1,'position') %位置p=get(Hf_1,'Children') %子对象p=get(Hf_1,'Color') %颜色get(Hf_1) %整个图形的属性2、set函数set(H,’PropertyName’,PropertyValue):可以同时设置多个属性的值set(H,a):a为结构体,字段名为图形对象的属性名,字段值为属性值set(H,pn,pv):通过单元型变量为图形对象进行属性赋值,其中pn和pv为单元型变量,pn 为1*n的字符型单元变量,其分量为图形对象的属性名,pv可以是m*n的单元型变量,这里m为句柄数组H的长度,即m=length(H)x=-2*pi:pi/12:2*pi;y=x.^2+x.^3;h=figure;plot(x,y);set(h,'position',[232 248 560 420])set(h,'units') %帮助set(h,'position') %帮助figure('Color','blue','NumberTitle','off','Name','My Figure')Hf_fig=figureHf_line=lineset(Hf_line)get(Hf_line)x=linspace(-2*pi,2*pi,200);y=sin(x);Hf_sin=plot(x,y);set(Hf_sin,'Color',[1 0.5 0],'LineWidth',3)z=cos(x);hold onHf_cos=plot(x,z);set(Hf_cos,'Color',[0.75 0.75 1])查找对象Hf_fig=gcf:返回当前图形的句柄Hf_ax=gca:返回当前图形的当前坐标轴句柄Hx_obj=gco或是Hx_obj=gco(Hf_fig):获取当前对象findobj函数Hx=findobj(‘P1name’,P1value,…):返回根部和根部以下的那些属性值与findobj参数项匹配的对象句柄Hx=findobj(Objecthandle,‘P1name’,P1value,…):限定在Objecthandle中列出的对象和它们的子对象Hx=findobj(Objecthandle,’flat’,‘P1name’,P1value,…):限定在Objecthandle中列出的对象H=findobj:返回根对象和它所有子对象的句柄H=findobj(Objecthandle):返回Objecthandle中列出的对象和它们的子对象的句柄当前对象的定义:用鼠标刚刚点过的对象x=linspace(-pi,pi,100);y=sin(x);z=cos(x);plot(x,y,'r',x,z,'g');H1_lines=get(gca,'Children');for k=1:size(H1_lines)if get(H1_lines(k),'color')==[0 1 0] %查找图中绿色线条的句柄H1_green(k)=H1_lines(k);endendH1_green堆积次序堆积次序决定哪一对象叠加在其他对象上,最后被创建的对象在堆栈顶部默认属性使用set函数默认属性名:Default+属性名set(0,'DefaultAxesColorOrder',[0 0 0],...'DefaultAxesLineStyleOrder','-|--|:|-.')z=peaks;plot(1:49,z(4:7,:))。

MATLAB基础及应用课件(下)第5-8章

MATLAB基础及应用课件(下)第5-8章
图5-4中间的下拉框可以选择拟合算法,可以 试用多种拟合算法,以找出最佳拟合图形。例 如选择Smoothing Spline(平滑样条函数), 观察Curve Fitting Tool窗口,如图5-5所示。
图5-5 拟合曲线
第5章 MATLAB数值计算
第5章 MATLAB数值计算
5.4.4 图形窗口的拟合和统计工具
第5章 MATLAB数值计算
在图5-6中的“绘制拟合图”中选择拟合方 法(可同时选多种);
“显示方程”复核框可以选择是否在图形上 显示拟合多项式;
“绘制残差图”复核框选中时会产生第二幅 图形,该图形显示了每一个数据点与计算出来的 拟合曲线之间的距离。
例如选择“线性”和“三次方”拟合方法, 同时选中两个复核框,产生图形如图5-7所示。
MATLAB的图形窗口中提供了简单方便的数 据拟合和基本统计工具。
数据拟合工具可以对所绘制的曲线使用多种 方法进行拟合;
基本统计工具可提供最小值、最大值、平均 值、中位值、标准差、数据范围等统计运算。
1.数据拟合工具
第5章 MATLAB数值计算
使用数据拟合工具首先需要创建一幅图形,在 命令行窗口输入以下程序:
两个矩阵x和y的相关系 数
第5章 MATLAB数值计算
5.2 数值运算 一、 多项式
名称
创建多项 式
求根
求值
多项式乘 法
多项式除 法
多项式求 导
函数格式 P=[ a0 a1 a2 …an-1
an] P=poly(A) roots(P) polyval(P,A)
polyvalm(P,m)
说明
P为多项式(以下各函数中P均为多项式),a0 a1 a2 … an-1 an为按降幂顺序排列的多项式系数 A为向量。创建以向量A中元素为根的多项式

matlab程序设计第八章和九章matlab句柄绘图

matlab程序设计第八章和九章matlab句柄绘图

3.图形set(h1, ’unit’,’centimeters’,’position’,[100 200 300 500],’color’,’r’)%指points. set(h1,‘unit’,‘normalized’,‘position’,[0.2,0.2,0.64,0.32])%归一化 注:’unit’单位的取值为:‘inches’,‘centimeters’,‘normalized’, ‘points’,‘pixels’和‘characters’。
什么是句柄操作? 向量化的绘图要求给每个图形元素分配一个句 柄 (handle), 以后再对该图形元素做进一步操作 时,则只需对该句柄进行操作即可。
• 各图形对象的句柄的数据格式:
根屏幕
0
图形窗口 整数,表示图形窗口数
其它对象 对应的浮点数
• 所有能创建图形对象的matlab函数都可
给出所创建图形对象的句柄 例:创建1号窗口,返回句柄
• h1=line([0:10],[0:10])
h1 = h1为句柄的代码值
10
9
8
7
6
5
4
3
2
1
0
0
1
2
3
4
5
6
7
8
9
10
• 查阅线对象的属性名称和属性值 get(h1)
Color = [1 1 0] EraseMode = normal LineStyle = LineWidth = [0.5] MarkerSize = [6] Xdata = [ (1 by 11) ] Ydata = [ (1 by 11) ] Zdata = []
例2:
x=1:10,y=1:10; h2=plot(x,y); set(h2,'linewidth',2,'color','r'); set(h2,'linestyle','-.')

第8章 matlab图形句柄

第8章 matlab图形句柄

图形窗口常用属性
(1)MenuBar/ToolBar属性。属性的取值可以是figure(默认值)或none,用来 控制图形窗口是否具有菜单条/工具栏。 (2)NumberTitle属性。该属性的取值是on(默认值)或off,决定在图形窗口 的标题中是否以“Figure No.n:”为标题前缀,这里n是图形窗口的序号,即句 柄值。 (3)Resize属性。该属性的取值是on(默认值)或off。决定着在图形窗口建立 后可否用鼠标改变该窗口的大小。 (4)Pointer属性。该属性的可取值是arrow(默认值)、crosshair、ibeam、 watch、topl、topr、botl、botr、circle、cross、fleur、custom等,分别对应 于15种典型的鼠标指针形式。 (5)Position属性。该属性的取值是一个由4个元素构成的向量,其形式为 [n1,n2,n3,n4]。这个向量定义了图形窗口在屏幕上的位置和大小,其中n1和 n2分别为对象左下角的横纵坐标值,n3和n4分别为图形窗口的宽度和高度。 它们的单位由Units属性决定。 (6)Units属性。该属性的取值可以是下列字符串中的任何一种: normalized (相对单位,为默认值)、pixel(像素)、inches(英寸)、centimeters (厘米)和points(磅)。 (7)对键盘及鼠标响应属性。MATLAB允许对键盘和鼠标键按下这样的动作进 行响应,这类属性有KeyPressFcn(键盘键按下响应)、 WindowButtonDownFcn(鼠标键按下响应)、WindowButtonMotionFcn (鼠标移动响应)、WindowButtonUpFcn(鼠标键释放响应)等,这些属性 所对应的属性值可以为用MATLAB编写的函数名或命令名,表示一旦键盘键 或鼠标键按下之后,将自动调用给出的函数或命令。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

8.1 图形对象及其句柄
MATLAB的图形系统是面向对象的,图形对象是MATLAB为了描述具有 类似特征的图形元素而定义的具有一些公共属性的抽象的元素集合, 是用于显示图形和制作用户界面的基本要素。
8.1.1 图形对象
MATLAB的图形对象包括图形窗口、坐标轴、用户界面、曲线、曲面、 文字、图像等。在MATLAB中,每一个具体的图形都是由若干个不同 的图形对象组成的。图形对象是有层次的,其层次结构如图8.1所示。 图形窗口是根对象的子对象,坐标轴和用户界面对象是图形窗口的子 对象,曲线、曲面、文字等是坐标轴的子对象。
8.1.3 图形对象属性 1.属性名与属性值 为方便属性的操作,MATLAB给每种对象的每一个属性规定了一个名字, 称为属性名,而属性名的取值称为属性值。例如,LineStyle是曲线对 象的一个属性名,它的值决定着线型,取值可以是'-' 、':'、'-.'、'--'或 'none'。在属性名的写法中,不区分字母的大小写,而且在不引起歧 义的前提下,属性名不必写全。例如,lines就代表LineStyle。此外, 属性名要用单撇号括起来。 2.属性的操作 (1)设置图形对象属性 用户可以通过set函数重新设置图形对象属性,其调用格式为 set(句柄,属性名1,属性值1,属性名2,属性值2,…) 其中“句柄”用于指明要操作的图形对象。如果在调用set函数时省略全 部属性名和属性值,则将显示出句柄所有的允许属性。 (2)获取图形对象属性 用户可通过get函数获取图形对象的属性值,其调用格式为 V=get(句柄,属性名) 其中V是返回的属性值。如果在调用get函数时省略属性名,则将返回句 柄所有的属性值。例如,以下命令用来获得上述曲线的颜色属性值: col=get(h,'Color');
【例8.2】在同一坐标下绘制红、绿两条不同的曲线,然后获取绿色曲线 的句柄,并利用句柄更改绿色曲线的样式。 程序如下: 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',':','Marker','p'); %对绿色线条进行设置
【例8.3】建立一个图形窗口。该图形窗口没有菜单条,标题名称为“我 的图形窗口”,该窗口位于屏幕的左下角,其宽度和高度分别为450 像素和250像素,且当用户从键盘按下任意一个键时,将在该图形窗 口绘制出正弦曲线。 命令如下: x=linspace(0,2*pi,60); y=sin(x); hf=figure('Position',[5,5,360,210],'MenuBar','none',… 'Name','我的图形窗口','NumberTitle','off', … 'KeyPressFcn', 'plot(x,y);axis([0,2*pi,-1,1]);');
表 8.1 函 gcf gca gco findobj 数 常用的获取图形对象句柄的函数 功 获取当前图形窗口的句柄(get current figure) 获取当前坐标轴的句柄(get current axis) 获取最近被选中的图形对象的句柄(get current object) 按照指定的属性来获取图形对象的句柄 能
第8章 图形句柄
MATLAB的图形是由不同图形对象(如坐标轴、曲线、曲面 或文字等)组成的。MATLAB系统给每个图形对象分配一 个标识符,称为句柄,以后可以通过该句柄获取或设置该 图形对象的属性 【本章学习目标】 ● 了解图形对象和图形句柄的基本概念。 ● 掌握图形对象属性的基本操作。 ● 掌握利用图形对象进行绘图操作的方法。
8.2 图形窗口对象与坐标轴
除根对象外,所有图形对象都可以由与之同名的低层函数创建。 8.2.1 图形窗口对象 创建图形窗口对象使用figure函数,其调用格式如下。 ● 句柄变量 = figure(属性名1,属性值1,属性名2,属性值2,…) ● figure(窗口句柄) 使用第1种格式时,按指定的属性来创建图形窗口。使用第2种格式时, 若句柄是已经存在的某图形窗口句柄,则使该图形窗口成为当前图形 窗口,并在此输出;若句柄是不存在的图形窗口句柄,则使用该句柄 创建一个新的图形窗口后,在新的图形窗口输出。figure函数不带参 数时,按MATLAB默认的属性值创建图形窗口。 要关闭图形窗口,使用close函数,其调用格式为 close(窗口句柄) 另外,close all命令可以关闭所有的图形窗口,clf命令则是清除当前图形 窗口的内容,但不关闭窗口。
3.对象的公共属性 图形对象具有各种各样的属性,有些属性是所有对象共同具备的,有些 属性则是各对象所特有的。这里先介绍对象常用的公共属性。 (1)Children属性。该属性的取值是该对象所有子对象的句柄组成的一 个向量。 (2)Color属性。该属性的取值是一个颜色值,既可以用字符表示,也 可以用RGB三元组表示。 (3)Parent属性。该属性的取值是该对象的父对象的句柄。 (4)Tag属性。该属性的取值是一个字符串,它相当于给该对象定义了 一个标签。定义了Tag属性后,在任何程序中都可以通过findobj函数 获取该标签所对应图形对象的句柄。例如,hf = findobj(0, 'Tag','Flag1')将在屏幕对象及其子对象中寻找Tag属性为Flag1的对象, 并返回句柄。 (5)Type属性。表示该对象的类型,该属性的值是只读的。 (6)UserData属性。该属性的取值是一个矩阵,默认值为空矩阵。在 程序设计中,可以将一个与图形对象有关的比较重要的数据存储在这 个属性中,借此可以达到传递数据的目的。具体做法是,先用set函 数给某一句柄添加一些附加数据(一个矩阵),如果想使用这样的矩 阵,再用get函数调用出来。 (7)Visible属性。该属性的取值是on(默认值)或off,决定着图形对 象是否在图形窗口中显示出来。
图形窗口常用属性
(1)MenuBar/ToolBar属性。属性的取值可以是figure(默认值)或none,用来 控制图形窗口是否具有菜单条/工具栏。 (2)NumberTitle属性。该属性的取值是on(默认值)或off,决定在图形窗口 的标题中是否以“Figure No.n:”为标题前缀,这里n是图形窗口的序号,即句 柄值。 (3)Resize属性。该属性的取值是on(默认值)或off。决定着在图形窗口建立 后可否用鼠标改变该窗口的大小。 (4)Pointer属性。该属性的可取值是arrow(默认值)、crosshair、ibeam、 watch、topl、topr、botl、botr、circle、cross、fleur、custom等,分别对应 于15种典型的鼠标指针形式。 (5)Position属性。该属性的取值是一个由4个元素构成的向量,其形式为 [n1,n2,n3,n4]。这个向量定义了图形窗口在屏幕上的位置和大小,其中n1和 n2分别为对象左下角的横纵坐标值,n3和n4分别为图形窗口的宽度和高度。 它们的单位由Units属性决定。 (6)Units属性。该属性的取值可以是下列字符串中的任何一种: normalized (相对单位,为默认值)、pixel(像素)、inches(英寸)、centimeters (厘米)和points(磅)。 (7)对键盘及鼠标响应属性。MATLAB允许对键盘和鼠标键按下这样的动作进 行响应,这类属性有KeyPressFcn(键盘键按下响应)、 WindowButtonDownFcn(鼠标键按下响应)、WindowButtonMotionFcn (鼠标移动响应)、WindowButtonUpFcn(鼠标键释放响应)等,这些属性 所对应的属性值可以为用MATLAB编写的函数名或命令名,表示一旦键盘键 或鼠标键按下之后,将自动调用给出的函数或命令。
8.2.2 坐标轴 坐标轴是在图形窗口中定义的一个画图区域。坐标轴对象是 图形窗口的子对象,在某个图形窗口中输出图形图像,实 质上是指在该图形窗口的当前坐标轴中输出图形图像。 建立坐标轴对象使用axes函数,其调用格式如下。 ● 句柄变量=axes(属性名1,属性值1,属性名2,属性值2,…) ● axes 或 句柄变量=axes 调用axes函数用指定的属性在当前图形窗口创建坐标轴,并 将其句柄赋给左边的句柄变量。函数不带参数表示按 MATLAB默认的属性值在当前图形窗口创建坐标轴。 用axes 函数建立坐标轴之后,还可以调用axes 函数将其设 定为当前坐标轴,且坐标轴所在的图形窗口自动成为当前 图形窗口,调用格式为 axes(坐标轴句柄)
【例8.1】绘制曲线并查看有关对象的句柄。 命令如下: x=linspace(0,2*pi,30); y=sin(x); h0=plot(x,y,'rx') %曲线对象的句柄 h0 = 171.0016 h1=gcf %图形窗口句柄 h1 = 1 h2=gca %坐标轴句柄 h2 = 170.0017 h3=findobj(gca,'Marker','x') %坐标轴上曲线的句柄 h3 = 171.0016 图形对象的句柄由系统自动分配,每次分配的值不一定相同。在获取对 象的句柄后,可以通过句柄来设置或获取对象的属性。

轴 注解对象
核心对象
绘图对象
相关文档
最新文档