绘制每个日期的不同事件

Plot different occurrences per date

我有一个包含很多列的数据集,其中两个是:

Type of vaccine Date
A 01-01-2021
A 01-01-2021
B 01-01-2021
C 02-01-2021
B 02-01-2021
D 03-01-2021
E 04-01-2021
... ...

我想绘制一个折线图,显示每种类型的疫苗及其每个日期的数量。

我有这样的情节 plot2 = df.value_counts('vacina_dataaplicacao').sort_values().plot(kind='line', cmap='plasma') 但它只显示一行和每个日期的总数。我需要分开,每一种疫苗一行。

一行即可完成:

pd.crosstab(pd.to_datetime(df['Date']), df['Type of vaccine']).cumsum().plot()

感谢@TrentonMcKinney 使用 pd.crosstab!

的想法

最初,我使用基本的 groupby:

df = df.assign(Date=pd.to_datetime(df['Date']))
tally = df.groupby(['Date', 'Type of vaccine']).size().unstack(fill_value=0)

tally.cumsum().plot()