使用 Pandas 创建堆叠条形图
要使用 pandas 创建堆叠条形图,您需要将数据放入 DataFrame 中一列用于 x 轴标签,一列用于条形图中的每个系列。在本例中,x 轴标签是“站点名称”,系列是“滥用”和“NFF”。
创建此 DataFrame 的一种方法是使用 pandas 的 groupby() 和 unstack () 方法。 'groupby() 方法按 '站点名称' 和 Abuse/NFF' 列对数据进行分组,unstack()` 方法将分组的数据转换为以 '站点名称' 作为索引和 'Abuse' 的 DataFrame ' 和 'NFF' 列作为列。
<code class="python">test5 = faultdf.groupby(['Site Name', 'Abuse/NFF'])['Site Name'].count().unstack('Abuse/NFF').fillna(0)</code>
获得 DataFrame 后,您可以使用plot() 方法创建堆积条形图,并将 kind='bar' 和 stacked 参数设置为正确。
<code class="python">test5.plot(kind='bar', stacked=True)</code>
生成的图将是一个堆叠条形图,其中“站点名称”位于 x 轴上,“滥用”和“NFF”列作为堆栈。
<code class="python">%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)</code>
以上是如何使用分组数据使用 Pandas 创建堆积条形图的详细内容。更多信息请关注PHP中文网其他相关文章!