【发布时间】:2020-01-31 21:50:43
【问题描述】:
我有一个包含每个错误发生时间的时间戳的 csv 错误文件。示例数据如下所示
2020-01-06T02:54:01.012+0000, 500 Internal Server Error
2020-01-06T05:04:01.012+0000, 500 Internal Server Error
2020-01-06T05:44:01.012+0000, 500 Internal Server Error
2020-01-06T07:04:01.013+0000, 500 Internal Server Error
2020-01-06T08:04:01.012+0000, 500 Internal Server Error
2020-01-06T10:24:01.010+0000, 500 Internal Server Error
2020-01-06T17:48:31.192+0000, 503 Service Unavailable
2020-01-08T04:35:48.624+0000, 502 Bad Gateway
2020-01-08T16:56:04.814+0000, 503 Service Unavailable
我想使用 matplotlib 将每分钟(或 30 秒)的错误显示为图表上的单独一行。不知道怎么做聚合?这是我尝试过的。有什么帮助吗?
import matplotlib.pyplot as plt
import pandas as pd
infile="example.csv"
dateparse = lambda time_str: pd.datetime.strptime(time_str, '%Y-%m-%dT%H:%M:%S.%f')
df = pd.read_csv(infile, parse_dates=['datetime'], date_parser=dateparse, index_col="datetime", names=['datetime','error'])
df.plot()
plt.show()
【问题讨论】:
标签: python pandas datetime matplotlib timeserieschart