Python 熊猫-绘制堆叠条形图

Python 熊猫-绘制堆叠条形图,python,matplotlib,pandas,ipython-notebook,python-3.4,Python,Matplotlib,Pandas,Ipython Notebook,Python 3.4,我试图创建一个叠加条形图来复制图片,我的所有数据都与excel电子表格分开 我不知道如何为它制作如图所示的数据帧,也不知道如何制作堆叠条形图。我找到的所有示例都以不同的方式与我试图创建的内容相匹配 My dataframe是一个csv,包含所有值,使用pandas dataframe缩小为以下值 Site Name Abuse/NFF 0 NORTH ACTON ABUSE 1 WASHINGTON - 2 WASHINGTON

我试图创建一个叠加条形图来复制图片,我的所有数据都与excel电子表格分开

我不知道如何为它制作如图所示的数据帧,也不知道如何制作堆叠条形图。我找到的所有示例都以不同的方式与我试图创建的内容相匹配

My dataframe是一个csv,包含所有值,使用pandas dataframe缩小为以下值

      Site Name    Abuse/NFF
0    NORTH ACTON       ABUSE
1    WASHINGTON         -
2    WASHINGTON        NFF
3    BELFAST            -
4    CROYDON            - 
我已经设法用总数来计算数据,并得到每个站点的单独计数,我似乎无法以图表的方式将其组合起来

我真的很想得到一些强有力的指导

已完成的代码,非常感谢帮助完成

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

test5.plot(kind='bar', stacked=True)

您是否有错误,或者只是不确定从哪里开始

%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)
这应该会有帮助

df.groupby(['NFF', 'ABUSE']).size().unstack().plot(kind='bar', stacked=True)
也许你可以用


如果要更改绘图的大小,请使用arg
figsize

df.groupby(['NFF', 'ABUSE']).size().unstack()
      .plot(kind='bar', stacked=True, figsize=(15, 5))

这就产生了这一点,这是不完全正确的,我需要堆叠的部分是每个站点滥用/nff列的计数。我没有犯错,我只是努力开始。为响应干杯。我已经更新了我的答案,在groupby函数之后加入了['mary/NFF']部分。添加这意味着滥用列将是唯一被聚合的值(在本例中计算)。不幸的是,它现在基本上没有工作,但没有被堆叠,没有错误,没有图例,基本上没有绿色。如果有意义的话,它是计算每个存储列中的总数,而不是值的总数。再试一次。如果要查看空格,请将最后一行的开头改为。。。plot(为另一个bash欢呼,但仍然没有欢乐。将在我上面的问题上放置代码,得到错误。keyrerror:“['rause''NFF'-']不在索引中”我已经对代码进行了调整,以使它们与我的数据帧匹配,但似乎无法使其正常工作,而且我希望-在结果中,我需要更改-表示错误,只是不想处理它。读者注意:如果您在尝试接受的答案时获得了与索引相关的
KeyError
,请在问题中使用已完成的代码。
df.groupby(['NFF', 'ABUSE']).size().unstack()
      .plot(kind='bar', stacked=True, figsize=(15, 5))