dataTipTextRow
向数据提示添加行
说明
使用 dataTipTextRow 函数创建具有特定标签、值源和值格式的新数据提示行。创建新数据提示行后,必须将其附加到绘图对象的 DataTipTemplate 属性。
创建对象
属性
标签,指定为字符向量或字符串标量。
示例: 'My Label'
值源,指定为字符向量或字符串标量,其中包含数据属性(如 'XData')的名称、工作区或表变量的名称、向量或函数句柄。源值的数量必须与数据点的数量相匹配。
示例: 'XData' 将值源指定为绘图对象的 XData 属性。
示例: [1 2 3 4 5] 将值源指定为向量。
示例: @(x)sin(x) 指定函数句柄,其中 x 是对象的 XData 值。
示例: @(x,y)sin(y) 指定函数句柄,其中 y 是对象的 YData 值。
值格式,指定为 'auto' 或具有数值、日期时间或持续时间格式的字符向量或字符串标量。您指定的格式类型必须与 Value 属性中的值类型匹配。
示例: r = dataTipTextRow(label,value,'usd') 指定美元的预定义数值格式。
示例: r = dataTipTextRow(label,value,'%#4.4g') 指定一种数值格式。
示例: r = dataTipTextRow(label,value,'yyyy-MM-dd') 指定日期时间格式。
示例: r = dataTipTextRow(label,value,'hh:mm:ss') 指定持续时间格式。
数值格式
您可以指定下表中列出的预定义格式之一。您也可以指定自定义数值格式。
| 预定义格式 | 描述 |
|---|---|
'usd' | 美元。此选项等同于使用 |
'eur' | 欧元。此选项等同于使用 |
'gbp' | 英镑。此选项等同于使用 |
'jpy' | 日元。此选项等同于使用 |
'degrees' | 在值之后显示度符号。此选项等同于使用 |
'percentage' | 在值之后显示百分号。此选项等同于使用 |
'auto' |
|
如果上表中列出的格式都不是您需要的格式,则可以创建一个带标识符的自定义字符向量或字符串。

标识符是可选的,百分比符号和转换字符除外。按以下顺序构造格式:
百分号
一个或多个标志 - 用来指示在正值之前添加加号之类的选项。要查看完整的选项列表,请参阅可选标志的表。
字段宽度 - 刻度标签上要打印的最小字符数。请将字段宽度指定为整数值。如果刻度值中的有效位数小于字段宽度,则在标签上用空格填充。
精度 - 小数点右侧的位数或有效位数,具体取决于转换字符。将精度指定为一个整数值。
转换字符 - 值的类型。要查看完整的选项列表,请参阅转换字符的表。如果指定的转换不适合数据,MATLAB® 将覆盖指定的转换并使用
%e。
您还可以在格式的开头或末尾指定字面文本。要打印单引号,请使用 ''。要打印百分比字符,请使用 %%。
'$%.2f'- 在每个值前面显示美元符号,并使用具有两位小数的定点记数法。'%.3f Million'- 在每个值后面显示Million,并使用具有三位小数的定点记数法。
| 可选标志 | 描述 | 数值格式示例 |
|---|---|---|
+ | 为正值打印符号字符 (+),例如 '+100'。 | '%+4.4g' |
0 | 用前导零而不是空格填充字段宽度,例如 '0100'。 | '%04.4g' |
– | 左对齐,在值的末尾而不是开头用空格填充。例如,如果字段宽度为 4,则此标志将标签格式化为 '100 ',而不是 ' 100'。 | '%-4.4g' |
# | 对于 | '%#4.4g' |
| 转换字符 | 描述 | 示例 |
|---|---|---|
d 或 i | 底数为 10 的有符号整数。精度值指示有效位数。 | '%.4d' 将 π 显示为 0003。 |
f | 定点记数法。精度值指示小数位数。 | '%.4f' 将 π 显示为 3.1416。 |
e | 指数记数法。精度值指示小数位数。 | '%.4e' 将 π 显示为 3.1416x100。 |
g | 更精简版本的 e 或 f,不带尾随零。精度值指示最大小数位数。 | '%.4g' 将 π 显示为 3.1416。 |
日期时间格式
下表显示了几种常见的格式,还包括纽约市 2014 年 4 月 19 日星期六晚上 9:41:06.12345 的格式化输入示例。
Format 的值 | 示例 |
|---|---|
'yyyy-MM-dd' | 2014-04-19 |
'dd/MM/yyyy' | 19/04/2014 |
'dd.MM.yyyy' | 19.04.2014 |
'yyyy年 MM月 dd日' | 2014年 04月 19日 |
'MMMM d, yyyy' | April 19, 2014 |
'eeee, MMMM d, yyyy h:mm a' | Saturday, April 19, 2014 9:41 PM |
'MMMM d, yyyy HH:mm:ss Z' | April 19, 2014 21:41:06 -0400 |
'yyyy-MM-dd''T''HH:mmXXX' | 2014-04-19T21:41-04:00 |
下表显示了可用于构造日期时间格式的字母标识符。可以使用连字符、空格、冒号或任何非 ASCII 字符等非字母字符来分隔字段。这些标识符遵从日期的 Unicode® 区域数据标记语言 (LDML) 标准。
使用下表中的标识符指定日期和时间字段的显示格式。
| 字母标识符 | 描述 | 显示 |
|---|---|---|
G | 年代 | CE |
y | 年份,没有前导零。请参阅紧随此表后的“注释”。 | 2014 |
yy | 年份,使用最后两位数。请参阅紧随此表后的“注释”。 | 14 |
yyy, yyyy ... | 年份,至少使用 'y' 实例数指定的位数 | 对于年份 2014,'yyy' 显示 2014,而 'yyyyy' 则显示 02014。 |
u, uu, ... | ISO 年份。单个数字来指定年份。ISO 年份值将正数值分配给 CE 年份,将负数值分配给 BCE 年份,1 BCE 表示年份 0。 | 2014 |
Q | 季度,使用一位数 | 2 |
QQ | 季度,使用两位数 | 02 |
QQQ | 季度,缩写 | 2 季度 |
QQQQ | 季度,全名 | 第二季度 |
M | 月份,使用一位或两位数字 | 4 |
MM | 月份,使用两位数字 | 04 |
MMM | 月份,缩写名称 | 四月 |
MMMM | 月份,全名 | 四月 |
MMMMM | 月份,首字母大写 | A |
W | 一月中的第几周 | 1 |
d | 一月中的第几天,使用一位或两位数 | 5 |
dd | 一月中的第几天,使用两位数 | 05 |
D | 一年中的第几天,使用一位、两位或三位数 | 95 |
DD | 一年中的第几天,使用两位数 | 95 |
DDD | 一年中的第几天,使用三位数 | 095 |
e | 一周中的星期几,使用一位或两位数的数值。 | 7,星期日是一周中的第一天。 |
ee | 一周中的星期几,使用两位数字 | 07 |
eee | 星期几,缩写名称 | 周六 |
eeee | 星期几,全名 | 星期六 |
eeeee | 星期几,使用一位大写数字 | 六 |
a | 一天中的时段(上午或下午) | 下午 |
h | 小时,采用 12 小时制格式,使用一位或两位数 | 9 |
hh | 小时,采用 12 小时制格式,使用两位数 | 09 |
H | 小时,采用 24 小时制格式,使用一位或两位数 | 21 |
HH | 小时,采用 24 小时制格式,使用两位数 | 21 |
m | 分钟,使用一位或两位数 | 41 |
mm | 分钟,使用两位数 | 41 |
s | 秒,使用一位或两位数 | 6 |
ss | 秒,使用两位数 | 06 |
S, SS, ..., SSSSSSSSS | 小数秒,使用 'S' 个数所指定的位数(最多 9 位)。 | 'SSS' 将 6.12345 秒截断为 123。 |
一些提示和注意事项:
如果您读取两位年份数并将格式指定为
y或yy,则基准年份确定该年所属的世纪。使用一个或多个
u字符而非y字符在使用接近零的年份数时解释年份。公元 144683 年之后或公元前 140743 年之前的日期时间值仅显示年份数,而不管指定的格式值为何。
使用下表中的标识符指定时区偏移量的显示格式。时区偏移量是指具体日期和时间与 UTC 之间相差的时间量。这不同于时区,时区包含确定一年特定时间的偏移量的规则。若要确保明确地显示时间,请加上时区偏移量标识符。
| 字母标识符 | 描述 | 显示 |
|---|---|---|
z | 时区偏移量的缩写名称。如果此值不可用,则时区偏移量使用短 UTC 格式,例如 UTC-4。 | EDT |
Z | ISO 8601 基本格式,带有小时、分钟和可选的秒字段。 | -0400 |
ZZZZ | 长 UTC 格式。 | UTC-04:00 |
ZZZZZ | ISO 8601 扩展格式,带有小时、分钟和可选的秒字段。以 ISO 8601 标准规定的 UTC 指示符 "Z" 的形式来显示与零时区的偏移量。 | -04:00 |
x 或 X | ISO 8601 基本格式,带有小时字段和可选的分钟字段。如果您指定 X,则以 ISO 8601 标准规定的 UTC 指示符 "Z" 的形式来显示与零时区的偏移量。 | -04 |
xx 或 XX | ISO 8601 基本格式,带有小时和分钟字段。如果您指定 XX,则以 ISO 8601 标准规定的 UTC 指示符 "Z" 的形式来显示与零时区的偏移量。 | -0400 |
xxx 或 XXX | ISO 8601 扩展格式,带有小时和分钟字段。如果您指定 XXX,则以 ISO 8601 标准规定的 UTC 指示符 "Z" 的形式来显示与零时区的偏移量。 | -04:00 |
xxxx 或 XXXX | ISO 8601 基本格式,带有小时、分钟和可选的秒字段。如果您指定 XXXX,则以 ISO 8601 标准规定的 UTC 指示符 "Z" 的形式来显示与零时区的偏移量。 | -0400 |
xxxxx 或 XXXXX | ISO 8601 扩展格式,带有小时、分钟和可选的秒字段。如果您指定 XXXXX,则以 ISO 8601 标准规定的 UTC 指示符 "Z" 的形式来显示与零时区的偏移量。 | -04:00 |
持续时间格式
持续时间格式可以是一个带有时间单位的数字(例如 '0.5 yrs'),也可以是一个数字计时器(例如 'hh:mm:ss',表示天数、小时数、分钟数和秒数)。
对于带有时间单位的数字,请指定下列单位之一:
'y'- 固定长度的年,一年等于 365.2425 天'd'- 固定长度的天,一天等于 24 小时'h'- 小时'm'- 分钟's'- 秒
对于数字计时器格式,请指定下列格式之一:
'dd:hh:mm:ss''hh:mm:ss''mm:ss''hh:mm'前三种格式中的任何一种,再加上最多九个
S字符指示秒的小数位,例如'hh:mm:ss.SSSS'
示例
加载样本事故数据并创建散点图。然后在默认数据提示中添加第三行。对于标签,使用 State。对于值源,使用 statelabel 工作区变量。创建新行后,将其添加到 Scatter 对象的 DataTipTemplate 属性。
load('accidents.mat','hwydata','statelabel') s = scatter(hwydata(:,5),hwydata(:,4)); row = dataTipTextRow('State',statelabel); s.DataTipTemplate.DataTipRows(end+1) = row;
以交互方式或使用 datatip 函数创建数据提示。
dt = datatip(s,11246.7,1493);

创建正弦值的线图。在默认数据提示中添加第三行以显示余弦值。为显示的余弦值指定数值格式。在本例中,使用 '%+4.4g' 以包含符号字符 (+) 来表示正值。创建新行后,将其添加到 Line 对象的 DataTipTemplate 属性。
x = linspace(0,10); y1 = sin(x); y2 = cos(x); p = plot(x,y1); row = dataTipTextRow('Cosine',y2,'%+4.4g'); p.DataTipTemplate.DataTipRows(end+1) = row;
以交互方式或使用 datatip 函数创建数据提示。
dt = datatip(p,6.56566,0.27873);

版本历史记录
在 R2019a 中推出
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
选择网站
选择网站以获取翻译的可用内容,以及查看当地活动和优惠。根据您的位置,我们建议您选择:。
您也可以从以下列表中选择网站:
如何获得最佳网站性能
选择中国网站(中文或英文)以获得最佳网站性能。其他 MathWorks 国家/地区网站并未针对您所在位置的访问进行优化。
美洲
- América Latina (Español)
- Canada (English)
- United States (English)
欧洲
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)