如何用天数(y:天数x:day)绘制列表



我需要有关如何绘制列表的帮助。我有一个包含天数的列表(见图(,我需要制作一个图表,其中 x 轴是一天,y 轴是该天重复的次数。

日期的格式为日/月/年

天数列表

下面的代码显示了执行此操作的三个步骤。首先创建一个随机日期列表。接下来计算重复次数。最后绘制数据。


import pandas as pd
from datetime import datetime, timedelta
from random import choices, random
import matplotlib.pyplot as plt

## create random date list
date_diff_days = choices(range(1,20), k = 50)
dates = [datetime.now().date() - timedelta(days=i) for i in date_diff_days]

## compute repeated times
d = dict()
for date in dates:
d[date] = d[date] = d[date]+1 if date in d else 1
df = pd.DataFrame({'date': list(d.keys()),
'repeated' : list(d.values())})
df = df.sort_values(['date'])

## plot the timeseries data
plt.plot_date(x = df['date'], y = df['repeated'])
labels = [str(i.day) + '/'+ str(i.month) + '/'+str(i.year) for i in df['date']]
plt.xticks(ticks=df['date'],labels=labels, rotation=90)
plt.show()

最新更新