Matplotlib 绘制时间

Matplotlib 支持水平 x 轴上的时间图。数据值将放在垂直 y 轴上。在本文中,我们将使用一些示例来演示。

需要使用 Python datetime 模块,Python 中的一个标准模块。

绘制时间

你可以使用时间戳来绘制时间:

import matplotlib
import matplotlib.pyplot as plt
import numpy as np
import datetime
y = [ 2,4,6,8,10,12,14,16,18,20 ]
x = [datetime.datetime.now() + datetime.timedelta(hours=i) for i in range(len(y))]
plt.plot(x,y)
plt.gcf().autofmt_xdate()
plt.show()

![Maplotlib 时间戳为 X 轴](/img/Tutorial/Matplotlib/Matplotlib plot time.svg)

如果要更改间隔,请使用以下某行:

# minutes
x = [datetime.datetime.now() + datetime.timedelta(minutes=i) for i in range(len(y))]

从特定小时/分钟来绘制时间图

使用 datetime.datetime(year, month, day, hour, minute) 创建新的时间戳来从一个特定的时间来开始绘制。

完整示例:

import matplotlib
import matplotlib.pyplot as plt
import numpy as np
import datetime
customdate = datetime.datetime(2016, 1, 1, 13, 30)
y = [ 2,4,6,8,10,12,14,16,18,20 ]
x = [customdate + datetime.timedelta(hours=i) for i in range(len(y))]
plt.plot(x,y)
plt.gcf().autofmt_xdate()
plt.show()

![Maplotlib 指定时间开始的时间戳为 X 轴](/img/Tutorial/Matplotlib/Matplotlib plot specified time.svg)