Ma variable catégorielle case_satus
prend quatre valeurs uniques. J'ai des données de 2014 à 2016. Je voudrais tracer la distribution de case_status
regroupés par année. J'essaie de le faire en utilisant:
df.groupby('year').case_status.value_counts().plot.barh()
Et je reçois l'intrigue suivante:
Ce que j'aimerais avoir, c'est une représentation plus agréable. Par exemple, où j'ai une couleur pour chaque année, et tous les "REFUSÉS" se tiendraient côte à côte.
Je pense que cela peut être réalisé car l'objet groupby est un multi-index, mais je ne le comprends pas assez bien pour créer l'intrigue que je veux.
La solution est:
df.groupby('year').case_status.value_counts().unstack(0).plot.barh()
et se traduit par
Je pense que vous devez ajouter unstack
pour DataFrame
:
df.groupby('year').case_status.value_counts().unstack().plot.barh()
Le niveau de changement est également possible:
df.groupby('year').case_status.value_counts().unstack(0).plot.barh()