MATLAB图形句柄Word格式.docx
《MATLAB图形句柄Word格式.docx》由会员分享,可在线阅读,更多相关《MATLAB图形句柄Word格式.docx(26页珍藏版)》请在冰豆网上搜索。
请输入水位值:
'
ss=s-a;
sa=length(a)
fori=1:
sa;
ifss(i)<
0;
sss(i)=0;
else
sss(i)=ss(i);
end
end
Q=trapz(x,sss);
holdon
y=[0:
1:
890];
aa=['
水位'
num2str(s),'
米'
];
plot(y,s,'
r-'
)
title(['
所求的断面面积为'
num2str(Q),'
平方米'
],'
FontSize'
14,'
color'
red'
),
xlabel('
起点距(米)'
ylabel('
水深(米)'
gtext(aa)
holdoff
根:
图形对象的根,对应于计算机屏幕,根只有一个,其它所有图形对象都是根的后代。
图形窗口:
根的子代,窗口的数目不限,所有图形窗口都是根屏幕的子代,除根之外,其它对象则是窗的后代。
界面控制:
图形窗口的子代,创建用户界面控制对象,使得用户可采用鼠标在图形上作功能选择,并返回句柄。
界面菜单:
图形窗口的子代,创建用户界面菜单对象。
轴:
图形窗口的子代,创建轴对象,并返回句柄,线面字块像的父辈。
线:
轴的子代,创建线对象。
面:
轴的子代,创建块对象。
字:
轴的子代,创建字对象。
块:
像:
轴的子代,创建图像对象。
二、图形对象句柄
MATLAB在创建每一个图形对象时,都为该对象分配唯一的一个值,称其为图形对象句柄(Handle)。
句柄是图形对象的唯一标识符,不同对象的句柄不可能重复和混淆。
计算机屏幕作为根对象由系统自动建立,其句柄值为0,而图形窗口对象的句柄值为一正整数,并显示在该窗口的标题栏,其他图形对象的句柄为浮点数。
MATLAB提供了若干个函数用于获取已有图形对象的句柄。
(1)句柄图形:
利用底层绘图函数,通过对对象属性的设置(HandleGraphics)与操作实现绘图;
(2)句柄图形中所有图形操作都是针对图形对象而言的;
(3)句柄图形充分体现了面向对象的程序设计;
(4)句柄图形可以随意改变MATLAB生成图形的方式;
(5)句柄图形允许你定制图形的许多特性,无论是对图形做一点小改动,还是影响所有图形输出的整体改动;
(6)句柄图形的特性高层绘图函数是无法实现的;
(7)在高层绘图中对图形对象的描述一般是省缺的或由高层绘图函数自动设置的,因此对用户来说几乎是不透明的;
(8)但句柄绘图中上述图形对象都是用户需要经常使用的,所以要作到心中有数,用句柄设置图形对象的属性。
(exam7_2.m)
x=0:
2*pi/180:
2*pi;
y1=sin(2*x);
y2=cos(2*x);
h=plot(x,y1,x,y2)
l=legend('
sin'
cos'
>
exam7_2
h=
103.0026
3.0059
l=
104.0031
三、创建图形对象的底层函数
1、figure—创建图形窗口
调用格式:
h=figure(n)n为窗口序号。
创建1号窗口,返回句柄。
h=figure
(1)
h=
1
返回值为窗口号数
2、uicontrol—图形界面控制
h=uicontrol(‘property’,value)
property/value确定控制类型。
3、uimenu—创建用户界面菜单
h=uimenu(‘property’,value)
property/value确定菜单形式。
4、axes—创建轴对象
h=axes(‘property’,,value)
定义轴对象的位置与大小。
5、line—创建线对象
h=line(x,y,z)
h=lien(1:
6,1:
6)
3.0066
创建线对象的同时也建立了一个唯一的句柄变量h是句柄值——符点数。
6、patch—创建块对象
h=patch(x,y,z,c)x,y,z定义多边形,c确定填充颜色。
7、surface—创建面对象
h=surface(x,y,z,c)x,y,z三维曲面坐标,c颜色矩阵。
8、image—显示图象
h=image(x);
x为图像矩阵。
9、text—标注文字
h=text(x,y,’string’)
每个底层函数只能创建一个图形对象,并将它们置于适当的父辈对象中。
①(exam7_3.m)
clfreset;
H_mesh=mesh(peaks(20))
H_grand_parent=get(get(H_mesh,'
Parent'
),'
disp('
图柄
轴柄'
),disp([gcfgca])
H_mesh=
101.0039
H=
1
图柄
轴柄
1.0000100.0033
②(exam7_4.m)
clfreset,t=(0:
100)/100*2*pi;
H_line=line('
Xdata'
t,'
Ydata'
sin(t))
text(pi,0.8,'
\fontsize{14}sin(t)'
H_c=get(get(H_line,'
parent'
children'
)
T=get(H_c,'
Type'
H_line=
100.0035
H_c=
102.0061
T=
'
text'
line'
第二节图形对象属性
一、属性名与属性值
1、定义
MATLAB给每种对象的每一个属性规定了一个名字,称为属性名,而属性名的取值称为属性值。
2、查阅方法
line([0:
10],[0:
10])
(1)图形窗口
get(gcf)
Alphamap=[(1by64)doublearray]
BackingStore=on
CloseRequestFcn=closereq
Color=[0.8553880.8553880.855388]
Colormap=[(64by3)doublearray]
CurrentAxes=[101.006]
CurrentCharacter=
CurrentObject=[]
CurrentPoint=[00]
Dithermap=[(64by3)doublearray]
DithermapMode=manual
DoubleBuffer=off
FileName=
FixedColors=[(10by3)doublearray]
IntegerHandle=on
InvertHardcopy=on
KeyPressFcn=
MenuBar=figure
MinColormap=[64]
Name=
NextPlot=add
NumberTitle=on
PaperUnits=centimeters
PaperOrientation=portrait
PaperPosition=[0.6345176.3451720.304615.2284]
PaperPositionMode=manual
PaperSize=[20.98429.6774]
PaperType=A4
Pointer=arrow
PointerShapeCData=[(16by16)doublearray]
PointerShapeHotSpot=[11]
Position=[360514560420]
Renderer=painters
RendererMode=auto
Resize=on
ResizeFcn=
SelectionType=normal
ShareColors=on
Units=pixels
WindowButtonDownFcn=
WindowButtonMotionFcn=
WindowButtonUpFcn=
WindowStyle=normal
BeingDeleted=off
ButtonDownFcn=
Children=[101.006]
Clipping=on
CreateFcn=
DeleteFcn=
BusyAction=queue
HandleVisibility=on
HitTest=on
Interruptible=on
Parent=[0]
Selected=off
SelectionHighlight=on
Tag=
Type=figure
UIContextMenu=[]
UserData=[]
Visible=on
(2)当前轴
get(gca)
ALim=[01]
ALimMode=auto
AmbientLightColor=[111]
Box=off
CameraPosition=[5517.3205]
CameraPositionMode=auto
CameraTarget=[550]
CameraTargetMode=auto
CameraUpVector=[010]
CameraUpVectorMode=auto
CameraViewAngle=[6.60861]
CameraViewAngleMode=auto
CLim=[01]
CLimMode=auto
Color=[111]
CurrentPoint=[(2by3)doublearray]
ColorOrder=[(7by3)doublearray]
DataAspectRatio=[551]
DataAspectRatioMode=auto
DrawMode=normal
FontAngle=normal
FontName=Helvetica
FontSize=[10]
FontUnits=points
FontWeight=normal
GridLineStyle=:
Layer=bottom
LineStyleOrder=-
LineWidth=[0.5]
MinorGridLineStyle=:
NextPlot=replace
PlotBoxAspectRatio=[111]
PlotBoxAspectRatioMode=auto
Projection=orthographic
Position=[0.130.110.7750.815]
TickLength=[0.010.025]
TickDir=in
TickDirMode=auto
Title=[102.007]
Units=normalized
View=[090]
XColor=[000]
XDir=normal
XGrid=off
XLabel=[103.005]
XAxisLocation=bottom
XLim=[010]
XLimMode=auto
XMinorGrid=off
XMinorTick=off
XScale=linear
XTick=[(1by11)doublearray]
XTickLabel=[(11by2)chararray]
XTickLabelMode=auto
XTickMode=auto
YColor=[000]
YDir=normal
YGrid=off
YLabel=[104.004]
YAxisLocation=left
YLim=[010]
YLimMode=auto
YMinorGrid=off
YMinorTick=off
YScale=linear
YTick=[(1by11)doublearray]
YTickLabel=[(11by2)chararray]
YTickLabelMode=auto
YTickMode=auto
ZColor=[000]
ZDir=normal
ZGrid=off
ZLabel=[105.004]
ZLim=[-11]
ZLimMode=auto
ZMinorGrid=off
ZMinorTick=off
ZScale=linear
ZTick=[-101]
ZTickLabel=
ZTickLabelMode=auto
ZTickMode=auto
Children=[3.0083]
Parent=[1]
Type=axes
二、属性的操作
1、属性值
(1)窗口属性值
set(gcf)
Alphamap
BackingStore:
[{on}|off]
CloseRequestFcn:
string-or-functionhandle-or-cellarray
Color
Colormap
CurrentAxes
CurrentCharacter
CurrentObject
CurrentPoint
Dithermap
DithermapMode:
[auto|{manual}]
DoubleBuffer:
[on|{off}]
FileName
IntegerHandle:
InvertHardcopy:
KeyPressFcn:
MenuBar:
[none|{figure}]
MinColormap
Name
NextPlot:
[{add}|replace|replacechildren]
NumberTitle:
PaperUnits:
[{inches}|centimeters|normalized|points]
PaperOrientation:
[{portrait}|landscape|rotated]
PaperPosition
PaperPositionMode:
PaperSize
PaperType:
[{usletter}|uslegal|A0|A1|A2|A3|A4|A5|B0|B1|B2|B3|B4|B5|arch-A|arch-B|arch-C|arch-D|arch-E|A|B|C|D|E|tabloid|<
custom>
]
Pointer:
[crosshair|fullcrosshair|{arrow}|ibeam|watch|topl|topr|botl|botr|left|top|right|bottom|circle|cross|fleur|custom]
PointerShapeCData
PointerShapeHotSpot
Position
Renderer:
[{painters}|zbuffer|OpenGL]
RendererMode:
[{auto}|manual]
Resize:
ResizeFcn:
SelectionType:
[normal|open|alt|extend]
ShareColors:
Units:
[inches|centimeters|normalized|points|{pixels}|characters]
WindowButtonDownFcn:
WindowButtonMotionFcn:
WindowButtonUpFcn:
WindowStyle:
[{normal}|modal]
ButtonDownFcn:
Children
Clipping:
CreateFcn:
DeleteFcn:
BusyAction:
[{queue}|cancel]
HandleVisibility:
[{on}|callback|off]
HitTest:
Interruptible: