【发布时间】:2021-10-27 15:04:06
【问题描述】:
我有一个包含许多列的数据集,其中两个是:
| 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') 但它只显示一行和每个日期的总数。我需要把它分开,每种疫苗都有一行。
【问题讨论】:
-
务必将
'Date'列转换为datetime dtype和df.Date = pd.to_datetime(df.Date).dt.date,然后使用seaborn.catplot:sns.catplot(data=df, y='Date', hue='Type of vaccine', kind='count', height=6, aspect=1) -
这是离散数据,
pd.crosstab(df.Date, df['Type of vaccine']).plot(figsize=(12, 5))难以阅读。 -
没有 seaborn 的条形图版本:
pd.crosstab(df.Date, df['Type of vaccine']).plot(figsize=(12, 5), kind='bar')
标签: python pandas dataframe matplotlib data-science