本页对应的英文页面已更新,但尚未翻译。 若要查看最新内容,请点击此处访问英文页面。

创建自定义数据提示

当您将光标悬停在数据点上时,将显示数据提示。默认情况下,数据提示显示所选点的坐标。但对于某些类型的图,您可以自定义数据提示中显示的信息,例如更改数据提示标签或添加新行。

支持这些自定义操作的图具有 DataTipTemplate 属性,例如使用 plot 函数创建的 Line 对象。

更改标签和添加行

修改散点图上的数据提示的内容。首先,加载样本事故数据并创建散点图。将光标悬停在数据点上时,将显示默认数据提示。

load('accidents.mat','hwydata','statelabel')
s = scatter(hwydata(:,14),hwydata(:,4));

通过访问绘制的对象的 DataTipTemplate 属性并设置 Label 属性,将数据提示标签从 XY 更改为 PopulationFatalities

s.DataTipTemplate.DataTipRows(1).Label = 'Population';
s.DataTipTemplate.DataTipRows(2).Label = 'Fatalities';

在数据提示中添加一个新行。对于标签,使用 State。对于值,使用工作区中 statelabel 变量所包含的州名称。

row = dataTipTextRow('State',statelabel);
s.DataTipTemplate.DataTipRows(end+1) = row;

在数据提示中显示表值

修改散点图的数据提示内容,以包含表中的值。首先,从患者数据的示例电子表格创建一张表。绘制数据图。

tbl = readtable('patients.xls');
s = scatter(tbl.Height,tbl.Weight);

将数据提示标签从 XY 更改为 HeightWeight。然后在数据提示中添加一个新行,该行使用标签 Age,并显示表中“Age”列的值。

s.DataTipTemplate.DataTipRows(1).Label = 'Height';
s.DataTipTemplate.DataTipRows(2).Label = 'Weight';
row = dataTipTextRow('Age',tbl.Age);
s.DataTipTemplate.DataTipRows(end+1) = row;

如果使用的是 R2018b 或更早版本,请通过设置 datacursormode 对象的 UpdateFcn 属性(而不是使用 DataTipTemplate 对象)来自定义数据提示。

另请参阅

|

相关主题