python - 在 Python 中绘制时间戳

标签 python datetime matplotlib timestamp

我是 Python 新手,正在尝试创建一个简单的线图,其中 x 轴为时间,y 轴为值。我有一个 CSV 文件,可以从中导入数据。

数据示例如下所示

Data Extract

我尝试使用以下代码:

    import pandas as pd
    import numpy as np
    import matplotlib.pyplot as plt
    a_data = pd.read_csv("Data Sampler.csv")
    plt.plot(a_data.Timestamp, a_data.a)

但是,我收到一条错误消息:AttributeError:“Series”对象没有属性“find”

a_data.dtypes 告诉我 Timestamp 是一个对象,A 是 float 64。

有人可以帮忙吗?通过谷歌搜索解决方案,看起来我需要在 Python 中将时间戳转换为日期时间 - 但是我在这方面运气不佳(有很多错误消息)。

提前致谢。

最佳答案

如果您使用的是 matplotlib.__version__ >= 1.5.0,则以下内容应该有效:

In [4]: df
Out[4]: 
          Timestamp         A
0  03/10/2016 16:00  0.033361
1  04/10/2016 16:01  0.123108
2  05/10/2016 16:02  0.021805

In [5]: df.index = pd.to_datetime(df.Timestamp, dayfirst=True)

In [6]: df
Out[6]: 
                            Timestamp         A
Timestamp                                      
2016-10-03 16:00:00  03/10/2016 16:00  0.033361
2016-10-04 16:01:00  04/10/2016 16:01  0.123108
2016-10-05 16:02:00  05/10/2016 16:02  0.021805

In [7]: plt.plot('A', data=df)
Out[7]: [<matplotlib.lines.Line2D at 0x7f8e3c0e8150>]

In [7]: plt.show()

enter image description here

根据数据的规模,您可以使用适当的刻度格式化程序调整 x 轴的刻度格式,请参阅 here举个例子。

关于python - 在 Python 中绘制时间戳,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39966417/

相关文章:

R: strptime() 和 is.na() 意外的结果

2 位数年份的 Python Epoch 失败

python - 如何平滑多边形点之间的线?

python - 在单元测试期间抑制引发错误?

python - Mixin 的属性可以成为嵌套对象吗?

Python、PowerShell 还是其他?

python - 将数据类型系列转换为日期时间

python - 如何在 django 中编写带有过滤器和按条件排序的连接三个表的查询

python - 删除 Axes3d 中的空格(matplotlib)

numpy - matplotlib 箱线图颜色