在matplotlib中绘制具有正确日期的折线图



我已经为此挣扎了几天,我觉得我错过了一些非常简单的东西。我想我会伸出援手,希望有人能帮助我。我所要做的就是从我的数据集中绘制一个折线图。我尝试了很多不同的方法,但总是出现同样的问题。

这是我的密码。

import pandas as pd
import matplotlib.pyplot as plt
df = pd.read_csv('penalty_data_set_2.csv')
df['OFFENCE_MONTH'] = pd.to_datetime(df['OFFENCE_MONTH'])
print(df.head)

values = df.groupby('OFFENCE_MONTH')['TOTAL_NUMBER'].sum()

plt.plot(values.index,values)

这是我得到的。

折线图

和数据帧df

我使用的数据集来自https://www.kaggle.com/llihan/australia-nsw-traffic-penalty-data-20112017

您能检查日期是否被解析为YYYY-MM-DD而不是YYYY-DD-MM吗?

看起来matplotlib将所有值都放在每年的第一天,如果日期被错误地解析为混淆的日期和月份,就会出现这种情况。

最新更新