Pandas-tracer un graphique à barres empilées

j'essaie de créer un graphique à barres empilées qui reproduit l'image, toutes mes données sont séparées de cette feuille de calcul excel.

enter image description here

Je ne peux pas comprendre comment faire une base de données pour elle comme sur une photo, ni comment faire le diagramme à barres empilées. Tous les exemples que je localise le travail de différentes façons à ce que j'essaie de créer.

mon dataframe est un csv de toutes les valeurs réduites à ce qui suit avec un pandas dataframe.

      Site Name    Abuse/NFF
0    NORTH ACTON       ABUSE
1    WASHINGTON         -
2    WASHINGTON        NFF
3    BELFAST            -
4    CROYDON            - 

j'ai réussi à compter les données avec des totaux et d'obtenir des comptes individuels pour chaque site, je ne semble pas pouvoir le combiner d'une manière de graphe.

apprécierait vraiment Quelques conseils Forts.

Code complété, merci de votre aide.

test5 = faultdf.groupby(['Site Name', 'Abuse/NFF'])['Site Name'].count().unstack('Abuse/NFF').fillna(0)

test5.plot(kind='bar', stacked=True)
22
demandé sur Kuzen 2014-05-01 23:53:27

2 réponses

vous recevez des erreurs, ou tout simplement vous ne savez pas où commencer?

%pylab inline
import pandas as pd
import matplotlib.pyplot as plt

df2 = df.groupby(['Name', 'Abuse/NFF'])['Name'].count().unstack('Abuse/NFF').fillna(0)
df2[['abuse','nff']].plot(kind='bar', stacked=True)

stacked bar plot

51
répondu chucklukowski 2016-12-08 04:45:43

Qui devrait aider

df.groupby(['NFF', 'ABUSE']).size().unstack().plot(kind='bar', stacked=True)
0
répondu Domino 2018-07-05 16:48:14