文档

访问属性值

对象属性,点符号

绘图函数返回对象或对象创建的函数。例如:

h =情节(1:10);

h指的是值的线画在图1到10。

点符号是一个新的语法来访问对象属性从R2014b开始。这个语法使用对象变量和区分大小写的属性名与一个点(),形成一个对象点属性名称表示法:

object.PropertyName

如果nonscalar对象变量,使用索引来引用一个对象:

对象(n) .PropertyName

标量对象变量

如果h创建的行吗情节函数表达式h.Color这个特定的值是线的吗颜色属性:

h.Color
ans = 0 0.4470 - 0.7410

如果你把颜色值赋给一个变量:

c = h.Color;

的变量c是一个双。

c类名称大小字节1 x3 24 h 1 x1 112 matlab.graphics.chart.primitive.Line两倍

你可以改变这一行的颜色属性的赋值语句:

h.Color= [0 0 1];

使用点符号属性引用表达式:

小气鬼=意味着(h.YData);

或者改变属性值:

h。线宽= h。线宽+ 0.5;

引用其他对象中包含的属性与多个点的引用:

h.Annotation.LegendInformation.IconDisplayStyle
ans =对

设置对象的属性中包含的属性:

甘氨胆酸ax =;ax.Title。FontWeight =“正常”;

Nonscalar对象变量

图形函数可以返回一个对象数组。例如:

y =兰德(5);h =情节(y);大小(h)
答1 = 5

访问行代表的第一列y使用数组索引:

h (1)。线型=“——”;

使用函数设置线型数组中的所有行:

集(h,“线型”,“——”)

附加数据属性值

点符号,您可以使用“结束”索引数据附加到包含数据数组的属性,如线XDataYData。例如,这个代码更新XDataYData一起成长。你必须确保线的x和y数据呈现与调用之前是相同的drawnowMATLAB或返回®提示。

h =情节(1:10);k = 1:5 h。XData(end + 1) = h.XData(end) + k; h.YData(end + 1) = h.YData(end) + k; drawnow结束

图形对象变量处理

图形函数返回的对象变量处理。句柄是对实际对象的引用。对象变量处理在特定行为方式时复制和删除的对象。

复制对象变量

例如,创建一个图一行:

h =情节(1:10);

现在将对象变量复制到另一个变量,设置一个属性值与新的对象变量:

h2 = h;h2。颜色= (1,0,0)

分配对象的变量hh2创建一个处理的副本,但不是对象引用变量。的值颜色房地产从变量访问h从变量访问是一样的吗h2

h.Color
ans = 1 0 0

hh2引用同一个对象。复制一个处理对象变量并不复制对象。

删除对象变量

现在有两个对象变量在工作区中,指同一条直线。

大小字节类h 1 x1 112 matlab.graphics.chart.primitive名称。行h2 1 x1 112 matlab.graphics.chart.primitive.Line

现在关闭图包含线图:

关闭gcf

行对象不再存在,但对象变量指的是仍然存在行:

大小字节类h 1 x1 112 matlab.graphics.chart.primitive名称。行h2 1 x1 112 matlab.graphics.chart.primitive.Line

然而,对象变量不再有效:

h.Color
无效的或删除对象。
h2。颜色=“蓝”
无效的或删除对象。

删除无效的对象变量,使用清晰的:

清晰的hh2

清单对象属性

看看属性包含一个对象,使用得到功能:

得到(h)

MATLAB返回一个对象的属性列表和他们的当前值:

AlignVertexCenters:‘离开’注释:[1 x1 matlab.graphics.eventdata。注释]BeingDeleted:‘off’BusyAction:“队列”ButtonDownFcn:“孩子:[]剪裁:”的颜色:[0 0.4470 - 0.7410]…线型:“-”线宽:0.5000标记:“没有一个”……

你可以看到属性的值可能值的枚举集合使用功能:

集(h,“线型”)
',' ',' ':' ' -。' '没有'

显示所有可设置的属性包括可能的值属性值的枚举集合,使用对象变量:

集(h)

修改和设置和获取属性

您还可以访问和修改属性使用得到功能。

的基本语法设置现有对象的一个属性的值是:

集(对象”,PropertyName”,NewPropertyValue)

查询特定对象属性的当前值,使用一个声明的形式:

returned_value = (对象”,PropertyName”);

属性名总是特征向量。您可以使用单引号或一个变量是一个特征向量。属性值取决于特定属性。

多对象/属性操作

如果对象参数是一个数组,MATLAB设置指定的值在所有确定的对象。例如:

y =兰德(5);h =情节(y);

设置所有红色的线:

集(h,“颜色”,“红色”)

设置相同的属性的对象,指定属性名和属性值使用结构或单元阵列。例如,定义一个结构,适当地设置轴属性来显示一个特定的图:

view1。CameraViewAngleMode =“手册”;view1。DataAspectRatio = (1 1 1);view1。投影=“视角”;

对当前轴,设置这些值类型:

view1集(gca)

查询多个属性

您可以定义一个单元阵列的属性名称和使用它来获得这些属性的值。例如,假设您想要查询的值轴“相机模式”属性。首先,定义单元阵列:

camModes = {“CameraPositionMode”,“CameraTargetMode”,“CameraUpVectorMode”,“CameraViewAngleMode”};

使用这种细胞数组作为参数来获取这些属性的当前值:

camModes get (gca)
ans = '汽车' '汽车' '汽车' '汽车'
这个主题有帮助吗?