繁体   English   中英

如何在python中绘制时间序列

[英]How to plot time series in python

我一直在尝试从 CSV 文件绘制时间序列图。 我已经设法读取文件并使用strptime将数据从字符串转换为日期并存储在列表中。 当我尝试使用包含日期信息的列表在 matplotlib 中绘制测试图时,它将日期绘制为一系列点; 也就是说,对于 2012 年 5 月 31 日 19:00 的日期,我在 2012、05、19、31、00 处绘制了一个点,在 y 轴上为 x=1 的值,依此类推。 我知道这不是为绘图传递日期信息的正确方法。 有人可以告诉我如何正确传递这些信息。

将 x 轴数据从文本转换为datetime.datetime ,使用datetime.strptime

>>> from datetime import datetime
>>> datetime.strptime("2012-may-31 19:00", "%Y-%b-%d %H:%M")
 datetime.datetime(2012, 5, 31, 19, 0)

这是一个如何在拥有日期时间数组后绘制数据的示例:

import matplotlib.pyplot as plt
import datetime
import numpy as np

x = np.array([datetime.datetime(2013, 9, 28, i, 0) for i in range(24)])
y = np.random.randint(100, size=x.shape)

plt.plot(x,y)
plt.show()

在此处输入图片说明

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM