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

xtickformat

指定 x 轴刻度标签格式

说明

示例

xtickformat(fmt) 设置数值 x 轴刻度标签的格式。例如,将 fmt 指定为 'usd' 将以美元符号显示标签。

示例

xtickformat(datefmt) 设置显示日期或时间的标签的格式。例如,将 datefmt 指定为 'MM-dd-yy' 可显示 04-19-16 之类的日期。此选项仅适用于具有日期时间值的 x 轴。

示例

xtickformat(durationfmt) 设置显示持续时间的标签的格式。例如,将 durationfmt 指定为 'm' 可显示以分钟为单位的持续时间。此选项仅适用于具有持续时间值的 x 轴。

示例

xtickformat(ax,___) 使用 ax 指定的坐标区,而不是使用当前坐标区。指定 ax 作为第一个输入参数。

示例

xfmt = xtickformat 返回当前坐标区的 x 轴刻度标签所使用的格式样式。xfmt 可以为数值格式、日期格式或持续时间格式的字符向量,具体取决于 x 轴的标签的类型。

xfmt = xtickformat(ax) 返回 ax 指定的坐标区所使用的格式样式,而不是返回当前坐标区使用的格式样式。

示例

全部折叠

显示以美元为单位的带和不带小数值的 x 轴刻度标签。

创建一个条形图。显示以美元为单位的沿 x 轴的刻度标签。

x = 0:20:100;
y = [88 67 98 43 45 65];
bar(x,y)
xtickformat('usd')

查询刻度标签格式。MATLAB® 返回的格式为包含格式化操作符的字符向量。

fmt = xtickformat
fmt = 
'$%,.2f'

通过将数值格式调整为使用精度值 0 而不是 2,可显示不带小数值的刻度标签。

xtickformat('$%,.0f')

创建折线图后,显示沿 x 轴的刻度标签,并在每个值后附加文本“GHz”。

x = 1:10;
y = [.17 .25 .27 .28 .3 .32 .33 .34 .345 .35];
plot(x,y,'-V')
xtickformat('%g GHz')

创建散点图后,显示带两位小数的 x 轴刻度标签。通过向 xtickformat 传递一个数值格式的字符向量来控制小数位数,该数值格式对转换字符使用定点记数法且精度值为 2。

x = linspace(0,1,100);
y = randn(1,100).*cos(x);
scatter(x,y)
xtickformat('%.2f')

创建 x 轴为日期时间值的线图。然后,更改日期的格式。

t = datetime(2014,6,28) + caldays(1:10);
y = rand(1,10);
plot(t,y);
xtickformat('MM-dd')

创建 x 轴为持续时间值的线图。然后,更改刻度标签的格式。

t = 0:seconds(30):minutes(3);
y = rand(1,7);
plot(t,y)
xtickformat('mm:ss')

创建散点图并显示以欧元为单位的 x 轴刻度标签。然后,查询刻度标签格式。MATLAB® 返回的格式为包含格式化操作符的字符向量。

x = rand(100,1);
y = rand(100,1);
scatter(x,y)
xtickformat('eur')

xfmt = xtickformat
xfmt = 
'\x20AC%,.2f'

从 R2019b 开始,您可以使用 tiledlayoutnexttile 函数显示分块图。调用 tiledlayout 函数以创建一个 2×1 分块图布局。调用 nexttile 函数以创建坐标区对象 ax1ax2。在每个坐标区中绘制。通过将 ax2 指定为 xtickformat 的第一个输入参数,指定下部图的 x 轴刻度标签格式。显示以美元为单位的刻度标签。

tiledlayout(2,1)
ax1 = nexttile;
plot(ax1,rand(6))

ax2 = nexttile;
plot(ax2,rand(6))
xtickformat(ax2,'usd')

输入参数

全部折叠

数值刻度标签的格式,指定为字符向量或字符串标量。您可以指定下表中列出的格式之一,也可以指定自定义格式。

预定义格式说明
'usd'

美元。此选项等同于使用 '$%,.2f'。如果标签使用科学记数法,则此选项将指数值设置为 0。

'eur'

欧元。此选项等同于使用 '\x20AC%,.2f' 和指数值 0。

'gbp'

英镑。此选项等同于使用 '\x00A3%,.2f' 和指数值 0。

'jpy'

日元。此选项等同于使用 '\x00A5%,d' 和指数值 0。

'degrees'

在值之后显示度符号。此选项等同于使用 '%g\x00B0' 和默认指数值。

'percentage'

在值之后显示百分号。此选项等同于使用 '%g%%' 和默认指数值。

'auto'

'%g' 的默认格式和默认指数值。

示例: xtickformat('usd')

自定义数值格式

您可以通过创建包含标识符的字符向量或字符串来指定自定义数值格式。

标识符是可选的,百分比符号和转换字符除外。按以下顺序构造格式:

  • 一个或多个标志 - 用来指示在正值之前添加加号之类的选项。要查看完整的选项列表,请参阅可选标志表。

  • 字段宽度 - 刻度标签上要打印的最小字符数。请将字段宽度指定为整数值。如果刻度值中的有效位数小于字段宽度,则在标签上用空格填充。

  • 精度 - 小数点右侧的位数或有效位数,具体取决于转换字符。将精度指定为一个整数值。

  • 转换字符 - 值的类型。要查看完整的选项列表,请参阅转换字符表。如果指定的转换字符不适合数据,MATLAB® 将覆盖指定的转换字符并使用 %e

您还可以在格式的开头或末尾指定字面文本。要打印单引号,请使用 ''。要打印百分比字符,请使用 %%

示例:xtickformat('%.2f') 使用带两个小数位的定点记数法显示值。

示例:xtickformat('$%.2f') 在每个值前面显示美元符号。

示例:xtickformat('%.2f million') 在每个值后面显示 million

可选标志

标识符说明数值格式示例
,每隔三位数显示一个逗号,例如 '1,000''%,4.4g'
+为正值打印符号字符 (+),例如 '+100''%+4.4g'
0用前导零而不是空格填充字段宽度,例如 '0100''%04.4g'
左对齐,在值的末尾而不是开头用空格填充。例如,如果字段宽度为 4,则此标志将标签格式化为 '100 ',而不是 ' 100''%-4.4g'
#

对于 %f%e%g 转换字符,即使精度为 0,也会打印小数点,例如 '100.'。对于 %g,不会删除尾随零。

'%#4.4g'

转换字符

标识符说明示例
di底数为 10 的有符号整数。精度值指示有效位数。 '%.4d' 将 π 显示为 0003
f定点记数法。精度值指示小数位数。'%.4f' 将 π 显示为 3.1416
e指数记数法。精度值指示小数位数。'%.4e' 将 π 显示为 3.1416x100
g更精简版本的 ef,不带尾随零。精度值指示最大小数位数。'%.4g' 将 π 显示为 3.1416

日期和时间的格式,指定为 'auto'、字符向量或字符串标量。默认格式基于数据。

示例: xtickformat('yyyy-MM-dd') 显示日期和时间,例如 2016-04-19

示例: xtickformat('eeee, MMMM d, yyyy HH:mm:ss') 显示日期和时间,例如 Saturday, April 19, 2016 21:41:06

示例: xtickformat('MMMM d, yyyy HH:mm:ss Z') 显示日期和时间,例如 April 19, 2016 21:41:06 -0400

显示格式表列出了可用于构造格式的字母标识符。要分隔字段,可以包括非字母字符,例如连字符、空格、冒号或任何非 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

一些提示和注意事项:

  • 使用一个或多个 u 字符而非 y 字符在使用接近零的年数时解释年份。

  • 公元 144683 年之后或公元前 140743 年之前的日期时间值仅显示年份数字,而不管指定的格式值为何。

时区偏移量格式

使用这些标识符指定时区偏移量的显示格式。时区偏移量是指具体日期时间与 UTC 之间相差的时间量。时区偏移量不同于时区,因为它包含了决定一年特定时间的偏移量的规则。若要确保明确地显示时间,请加上时区偏移量标识符。

字母标识符说明显示
z时区偏移量的缩写名称。如果此值不可用,则时区偏移量使用短 UTC 格式,例如 UTC-4EDT
ZISO 8601 基本格式,带有小时、分钟和可选的秒字段。-0400
ZZZZ长 UTC 格式。UTC-04:00
ZZZZZISO 8601 扩展格式,带有小时、分钟和可选的秒字段。以 ISO 8601 标准规定的 UTC 指示符 "Z" 的形式来显示与零时区的偏移量。-04:00
xXISO 8601 基本格式,带有小时字段和可选的分钟字段。如果您指定 X,则以 ISO 8601 标准规定的 UTC 指示符 "Z" 的形式来显示与零时区的偏移量。-04
xxXXISO 8601 基本格式,带有小时和分钟字段。如果您指定 XX,则以 ISO 8601 标准规定的 UTC 指示符 "Z" 的形式来显示与零时区的偏移量。-0400
xxxXXXISO 8601 扩展格式,带有小时和分钟字段。如果您指定 XXX,则以 ISO 8601 标准规定的 UTC 指示符 "Z" 的形式来显示与零时区的偏移量。-04:00
xxxxXXXXISO 8601 基本格式,带有小时、分钟和可选的秒字段。如果您指定 XXXX,则以 ISO 8601 标准规定的 UTC 指示符 "Z" 的形式来显示与零时区的偏移量。-0400
xxxxxXXXXXISO 8601 扩展格式,带有小时、分钟和可选的秒字段。如果您指定 XXXXX,则以 ISO 8601 标准规定的 UTC 指示符 "Z" 的形式来显示与零时区的偏移量。-04:00

持续时间值的格式,指定为字符向量或字符串标量。

要将持续时间显示为包含小数部分(例如 1.234 小时)的单个数字,请指定下列格式之一。

格式 说明
'y'精确固定长度的年份的数目。固定长度的一年等于 365.2425 天。
'd'精确固定长度的天数的数目。固定长度的一天等于 24 小时。
'h'小时数
'm'分钟数
's'秒数

要以数字计时器的形式显示持续时间,请指定下列格式之一:

  • 'dd:hh:mm:ss'

  • 'hh:mm:ss'

  • 'mm:ss'

  • 'hh:mm'

此外,可以通过附加多达 9 个 S 字符显示多达 9 位小数的秒位。例如,'hh:mm:ss.SSS' 以三位数显示持续时间的毫秒数。

目标坐标区,指定为单个 Axes 对象或 Axes 对象向量。如果您不指定坐标区,则 xtickformat 使用当前坐标区。

算法

xtickformat 函数设置并查询与 x 轴相关联的标尺对象的 TickLabelFormat 属性。

在 R2016b 中推出