Main Content

datetick

(不推荐)日期格式的刻度标签

不推荐使用 datetick。有关更新代码的详细信息,请参阅版本历史记录

说明

datetick(tickaxis) 使用日期标记 tickaxis 所指定轴的刻度线,并替换默认数值标签。datetick 基于指定轴的最小和最大范围选择标签格式。轴数据值应为如 datenum 函数返回的日期序列值。

示例

datetick(tickaxis,dateFormat) 根据 dateFormat 设置标签的格式。

datetick(___,'keeplimits') 将刻度标签更改为基于日期的标签,同时保留坐标轴范围。将 'keeplimits' 追加到上述任何语法末尾。

datetick(___,'keepticks') 将刻度标签更改为基于日期的标签,同时保留其位置。将 'keepticks' 追加到上述任何语法末尾。

datetick(axes_handle,___)axes_handle 指定的坐标区上标记坐标区刻度线。axes_handle 参量可以置于上述语法中的任何输入参量组合之前。

示例

全部折叠

根据 1990 年美国人口统计绘制 20 世纪人口数据图,并用 2 位数年份标记 x 轴刻度。

按十年期创建时间数据。

t = (1900:10:1990)';

输入美国的总人口计数。

p = [75.995 91.972 105.711 123.203 131.669 ...
	150.697 179.323 203.212 226.505 249.633]';

使用 datenum 函数将年份转换为日期序列值,然后绘制数据条形图。

figure
bar(datenum(t,1,1),p)

Bar chart with serial date numbers along the x-axis

用 2 位数年份替换 x 轴刻度。数值标识符 11 对应于预定义的日期格式 'yy'

dateFormat = 11;
datetick('x',dateFormat)

Bar chart with two-digit years along the x-axis

输入参数

全部折叠

要用日期标记的轴,指定为 'x''y''z'

刻度线标签的格式,指定为符号标识符字符向量或对应于预定义格式的整数。

下表显示了可用于构造格式的符号标识符。可以使用连字符、空格或冒号等字符来分隔字段。例如,要显示月份日期后跟以三个字母缩写形式表示的星期几(在圆括号内),请使用 dateFormat = 'dd (ddd)'

注意

datetick 接受的字母标识符与 datetime 函数使用的标识符不同。

符号标识符

描述

示例

yyyy

完整年份

1990, 2002

yy

两位数年份

90, 02

QQ

使用字母 Q 和一个数字的季度年份

Q1

mmmm

使用全名的月份

March, December

mmm

使用前三个字母的月份

Mar, Dec

mm

两位数月份

03, 12

m

使用大写首字母表示月份

M, D

dddd

使用全名的日期

Monday, Tuesday

ddd

使用前三个字母的日期

Mon, Tue

dd

两位数日期

05, 20

d

使用大写首字母表示日期

M, T

HH

两位数小时
(使用符号标识符 AMPM 时无前导零)

05, 5 AM

MM

两位数分钟

12, 02

SS

两位数秒

07, 59

FFF

三位数毫秒

057

AM or PM

在表示时间的文本中插入的 AMPM

3:45:02 PM

下表列出了预定义的 MATLAB® 日期格式。

数值标识符

日期时间格式

示例

-1(默认值)

'dd-mmm-yyyy HH:MM:SS''dd-mmm-yyyy'(如果 'HH:MM:SS'= 00:00:00

01-Mar-2000 15:45:1701-Mar-2000

0

'dd-mmm-yyyy HH:MM:SS'

01-Mar-2000 15:45:17

1

'dd-mmm-yyyy'

01-Mar-2000

2

'mm/dd/yy'

03/01/00

3

'mmm'

Mar

4

'm'

M

5

'mm'

03

6

'mm/dd'

03/01

7

'dd'

01

8

'ddd'

Wed

9

'd'

W

10

'yyyy'

2000

11

'yy'

00

12

'mmmyy'

Mar00

13

'HH:MM:SS'

15:45:17

14

'HH:MM:SS PM'

3:45:17 PM

15

'HH:MM'

15:45

16

'HH:MM PM'

3:45 PM

17

'QQ-YY'

Q1-01

18

'QQ'

Q1

19

'dd/mm'

01/03

20

'dd/mm/yy'

01/03/00

21

'mmm.dd,yyyy HH:MM:SS'

Mar.01,2000 15:45:17

22

'mmm.dd,yyyy'

Mar.01,2000

23

'mm/dd/yyyy'

03/01/2000

24

'dd/mm/yyyy'

01/03/2000

25

'yy/mm/dd'

00/03/01

26

'yyyy/mm/dd'

2000/03/01

27

'QQ-YYYY'

Q1-2001

28

'mmmyyyy'

Mar2000

29

'yyyy-mm-dd'
(ISO 8601)

2000-03-01

30

'yyyymmddTHHMMSS'
(ISO 8601)

20000301T154517

31

'yyyy-mm-dd HH:MM:SS'

2000-03-01 15:45:17

提示

  • 要更改刻度间距和位置,请在调用 datetick 之前设置相应的坐标区属性(即 XTickYTickZTick)。

  • 调用 datetick 可将指定轴的 TickMode 设置为 'manual'。这意味着在缩放、平移或其他方式更改坐标轴范围后,您应再次调用 datetick 以更新刻度和标签。

  • 在 MATLAB 中使用日期时间的最佳方式是使用 datetime 值,它能提供比日期序列值更多的功能。使用 plot 函数绘制 datetime 值。使用 DatetimeTickFormat 名称-值对组参量修改坐标轴刻度标签的格式。

算法

datetick 调用 datestr 函数以将日期值转换为文本。

版本历史记录

在 R2006a 之前推出

全部折叠

R2024a: 不推荐

目前没有删除 datetick 的计划。不过,您可以改用任何绘图函数来绘制 datetimeduration 值。绘制 datetimeduration 值有以下优点:

  • 您可以使用 xtickformatytickformat 函数配置刻度标签。

  • 您可以通过设置 DatetimeRuler 对象的属性来自定义绘图的各个方面。例如,您可以用各种格式显示日期时间值(包括时区),或显示时区偏移量。