- 积分
- 9840
- 回帖
- 0
- 西莫币
-
- 贡献
-
- 威望
-
- 存款
-
- 阅读权限
- 120
- 最后登录
- 1970-1-1
该用户从未签到
|
楼主 |
发表于 2010-9-26 16:19
|
显示全部楼层
第四节 MATLAB下图形对象的修改
MATLAB图形对象是指图形系统中最基本,最底层的单元,这些对象包括:
屏幕(Root),图形窗口(Figures),坐标轴(Axes),控件(Uicontrol),菜单(Uimenu),
线(Lines),块(Patches),面(Surface),图像(Images),文本(Text)等等.
根据各对象的相互关系,可以构成如下所示的树状层次:
Root
Figures
Axes Uicontrol Uimenu Uicontextmenu (对象菜单)
Images Line Patch Surface Text
对各种图形对象进行修改和控制,要使用MATLAB的图形对象句柄
(Handle).在MATLAB中,每个图形对象创立时,就被赋予了唯一的标识,这
个标识就是该对象的句柄.
句柄的值可以是一个数,也可以是一个矢量.如每个计算机的根对象只有
一个,它的句柄总是0,图形窗口的句柄总是正整数,它标识了图形窗口的序号
等.
利用句柄可以操纵一个已经存在的图形对象的属性,特别是对指定图形对
象句柄的操作不会影响同时存在的其它图形对象,这一点是非常重要的.
一.对图形对象的修改可以用下面函数:
1)set函数:用于设置句柄所指的图形对象的属性.
Set函数的格式为:
set(句柄, 属性名1, 属性值1, 属性名2, 属性值2, ……)
例:h=plot(x,y)
set(h, 'Color', [1,0,0])------将句柄所指曲线的颜色设为红色.
2)get函数:获取指定句柄的图形对象指定属性的当前值.
格式为:get(句柄, '属性名')
如: get(gca, 'Xcolor')------获得X轴的当前颜色属性值.
执行后可返回X轴的当前颜色属性值[0,0,0](黑色).
3)如果没有设置句柄,则可以使用下列函数获得:
gcf:获得当前图形窗口的句柄;
gca:获得当前坐标轴对象的句柄;
gco:获得当前对象的句柄.
如:
A.要对图形窗口的底色进行修改,可用:
set(gcf, 'Color', [1,1,1])------将图形窗口底色设为白色
B.要把当前X轴的颜色改为绿色,可用:
set(gca, 'Xcolor', [0,1,0])
40
C.还可对坐标轴的显示刻度进行定义:
t=-pi:pi/20:pi;
y=sin(t);
plot(t,y)
set(gca,'xtick',[-pi:pi/2:pi],'xticklabel',['-pi','-pi/2','0','pi/2','pi'])
-pi-pi/20pi/2pi
-1
-0.5
0
0.5
1
本例中用'xtick'属性设置x轴刻度的位置(从-pi~pi,间隔pi/2,共设置
5个点),用'xticklabel'来指定刻度的值,由于通常习惯于用角度度量三角函
数,因此重新设置['-pi','-pi/2','0','pi/2','pi']5个刻度值.
二.一些常用的属性如下:
1)Box属性:决定图形坐标轴是否为方框形式,选项为'on'(有方框),
'off'(无方框);
2)'ColorOrder'属性:设置多条曲线的颜色顺序,默认值为:
[1 1 0;1 0 1;0 1 1;1 0 0;0 1 0;0 0 1]
黄色 粉色 天蓝 红色 绿色 兰色
颜色向量还有:[1 1 1]------白色;[0 0 0]------黑色.
3)坐标轴方向属性:'Xdir','Ydir','Zdir',其选项为:
'normal'------正常
'reverse'------反向
4)坐标轴颜色和线型属性:'Xcolor','Ycolor','Zcolor'------ 轴颜色,
值为颜色向量 |
|