Matplotlib 支持在水平(x
)轴上带有时间的图。 数据值将放在垂直(y
)轴上。 在本文中,我们将通过一些示例进行演示。
需要使用 Python datetime
模块(标准模块)。
绘制时间
您可以使用时间戳绘制时间:
import matplotlib
import matplotlib.pyplot as plt
import numpy as np
import datetime
# create data
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))]
# plot
plt.plot(x,y)
plt.gcf().autofmt_xdate()
plt.show()
如果要更改间隔,请使用以下几行之一:
# 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
# create data
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))]
# plot
plt.plot(x,y)
plt.gcf().autofmt_xdate()
plt.show()