创建自定义数据提示
当您将光标悬停在数据点上时,将显示数据提示。默认情况下,数据提示包括在图创建过程中指定的数据,它们与单个数据点对应。但对于某些类型的图,您可以自定义数据提示中显示的信息,例如更改数据提示标签或添加新行。
支持这些自定义操作的图具有 DataTipTemplate
属性,例如使用 plot
函数创建的 Line
对象。
更改标签和添加行
修改散点图上的数据提示的内容。首先,加载样本事故数据并创建散点图。然后,以交互方式或使用 datatip
函数创建数据提示。默认情况下,数据提示显示数据点的坐标。
load("accidents.mat","hwydata","statelabel","hwyidx") s = scatter(hwydata(:,5),hwydata(:,4)); dt = datatip(s,11246.7,1493);
对于每行,通过访问绘制的对象的 DataTipTemplate
属性并设置 Label
属性,将数据提示标签从 X
和 Y
更改为 Drivers (in thousands)
和 Fatalities
。
s.DataTipTemplate.DataTipRows(1).Label = "Drivers (in thousands)"; s.DataTipTemplate.DataTipRows(2).Label = "Fatalities";
向数据提示中添加新行。对于标签,使用 State
和 Highway Index
。对于值,使用工作区中 statelabel
和 hwyidx
变量中包含的州名称和高速公路索引。
dtRows = [dataTipTextRow("State",statelabel),... dataTipTextRow("Highway Index",hwyidx)]; s.DataTipTemplate.DataTipRows(end+1:end+2) = dtRows;
在数据提示中显示表值
修改散点图的数据提示内容,以包含表中的其他值。首先,从患者数据的示例电子表格创建一张表。绘制数据图。然后,以交互方式或使用 datatip
函数创建数据提示。
tbl = readtable("patients.xls"); s = scatter(tbl,"Height","Weight"); dt = datatip(s,64,142);
在数据提示中添加一个新行,该行使用标签 Age
,并显示表中“Age”列的值。
row = dataTipTextRow("Age",tbl.Age);
s.DataTipTemplate.DataTipRows(end+1) = row;
另请参阅
dataTipTextRow
| DataTipTemplate 属性 | datatip