原文: https://pythonspot.com/plot-time-with-matplotlib/

Matplotlib 支持在水平(x)轴上带有时间的图。 数据值将放在垂直(y)轴上。 在本文中,我们将通过一些示例进行演示。

需要使用 Python datetime模块(标准模块)。

绘制时间

您可以使用时间戳绘制时间:

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

使用 matplotlib 绘制时间 - 图1

如果要更改间隔,请使用以下几行之一:

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

从特定小时/分钟开始的时间图

要从特定日期开始,请使用datetime.datetime(year, month, day, hour, minute)创建新的时间戳。

完整示例:

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

下载示例