визуализировать два столбца в одном наборе данных - PullRequest
0 голосов
/ 22 апреля 2019

enter image description here

Я пытаюсь сгруппировать и отсортировать четыре столбца, посчитать значения и отобразить их на одной гистограмме, чтобы увидеть тенденцию изменения количества.

image

Year  Month  Bl_year  Month
2018  Jan     2019     Jan 
2018  Feb     2018     Mar
2018  Dec     2020     Dec 
2019  Apr     2019     Sep  
2020  Nov     2020     Dec 
2019  Sep     2018     Jan

Я попытался сгруппировать и отсортировать сначала и подсчитывать значения сначала по году, а затем по месяцу.

df_Activity_count = df.sort_values(['year','month'],ascending = True).groupby('month')
df_Activity_count_BL = df.sort_values(['BL year','BL month'],ascending = True).groupby('BL month')

Теперь я пытаюсь сравнить эти два в одном баре.Может кто-нибудь, пожалуйста, помогите.

Ответы [ 2 ]

1 голос
/ 22 апреля 2019

Попробуйте передать ax команде заговора:

df_Activity_count = df.sort_values(['year','month'],ascending = True).groupby('month')
df_Activity_count_BL = df.sort_values(['BL year','BL month'],ascending = True).groupby('BL month')

ax = df_Activity_count.years.value_counts().unstack(0).plot.bar()
df_Activity_count_BL['BL year'].value_counts().unstack(0).plot.bar(ax=ax)
0 голосов
/ 22 апреля 2019

Поскольку вы пометили matplotlib, я добавлю решение, используя pyplot

import matplotlib.pyplot as plt

# Create an axis object
fig, ax = plt.subplots()

# Define dataframes
df_Activity_count = df.sort_values(['year','month'],ascending = True).groupby('month')
df_Activity_count_BL = df.sort_values(['BL year','BL month'],ascending = True).groupby('BL month')

# Plot using the axis object ax defined above
df_Activity_count['year'].value_counts().unstack(0).plot.bar(ax=ax)
df_Activity_count_BL['BL year'].value_counts().unstack(0).plot.bar(ax=ax)
...