首页 > 编程笔记 > MATLAB笔记 阅读:31

MATLAB set()和get()函数的用法(附带实例)

图形对象的属性可以控制对象外观和行为等。MATLAB 为不同的图形对象提供了很多控制其特性的属性。

例如,figure 对象的 Color 属性可控制图窗的背景颜色;axes 对象的 Xlabel 属性可设置X轴坐标的标签;Xgrid 属性可设置是否在 X 轴的每一个刻度线画格线等。

不同的图形对象有不同的属性,通过 get() 和 set() 函数可以获取或设置其属性值。

MATLAB get()获取属性

在 MATLAB 中,利用 get() 函数可以获取图形对象的属性值,其调用格式如下:
get(h) % 在命令行窗口中显示指定图形对象h的属性和属性值。h必须为单个对象
s=get(h) % 返回一个结构体,该结构体包含指定图形对象h的所有属性和属性值
v=get(h,propertyNames) % 返回指定图形对象h的指定属性值
s=get(h,"default") % 返回的结构体包含为指定对象定义的所有默认属性值
s=get(groot,"factory") % 返回的结构体包含图形根对象groot的所有可设置属性的出厂值
v=get(h,defaultTypeProperty) % 返回指定图形对象h的指定属性和对象类型的默认值
v=get(groot,factoryTypeProperty) % 返回图形根对象groot的指定属性和对象类型的出厂值

MATLAB set()设置属性

在 MATLAB 中,利用 set() 函数可以设置图形对象的属性,其调用格式如下:
set(h,Name,Value) % 使用一个或多个名称-值对设置指定图形对象h的属性
set(h,defaultTypeProperty,defaultValue) % 使用一个或多个属性名称-值对更改图形对象h的指定属性和对象类型的默认值
set(h,NameArray,ValueArray) % 为指定图形对象h设置多个属性
set(h,a) % 使用a设置多个属性
% a是一个字段名称为对象属性名称,字段值为对应的属性值的结构体
s=set(h) % 返回指定图形对象h的用户可设置属性和可能的值,h必须为单个对象
v=set(h,propertyName) % 返回指定属性的可能值

【实例】通过句柄修改图形对象的属性。首先在编辑器中编写以下程序并运行。
x=0:0.2:4*pi;
y=cos(x);
hp=plot(x,y,'r-diamond');
ht=gtext('y=cos(x)-Origin');
运行程序后,输出如下图所示的图形。


图 1 原来的图形

此处返回曲线句柄 hp 和字符句柄 ht,然后通过下面的语句修改曲线和标注:
set(hp,'linestyle','-.','color','b');
set(ht,'string','y=cos(x): New','FontSize',12,'Rotation',20);
得到如下图所示的图形:


图 2 改变属性后的图形

在上述两个语句中,首先改变曲线的线型和颜色,然后更新字符串的内容和字号,并将其旋转 10°。

相关文章