带 groupby 的条形图
Posted
技术标签:
【中文标题】带 groupby 的条形图【英文标题】:Bar plot with groupby 【发布时间】:2018-06-22 15:02:43 【问题描述】:我的分类变量case_satus
具有四个唯一值。我有 2014 年到 2016 年的数据。我想绘制按年份分组的 case_status
的分布。我尝试使用:
df.groupby('year').case_status.value_counts().plot.barh()
我得到以下情节:
我想要的是更好的表现形式。例如,我每年都有一种颜色,所有的“DENIED”都会彼此相邻。
我认为它可以实现,因为 groupby 对象是一个多索引,但我对它的理解不够好,无法创建我想要的情节。
解决办法是:
df.groupby('year').case_status.value_counts().unstack(0).plot.barh()
结果
【问题讨论】:
有没有办法对图中的值进行排序?例如,在这种情况下,从下到上,您将有 Certified、Certified-withdrawn、Withdrawn、Denied。谢谢! 【参考方案1】:我认为您需要为DataFrame
添加unstack
:
df.groupby('year').case_status.value_counts().unstack().plot.barh()
也是可能的变化级别:
df.groupby('year').case_status.value_counts().unstack(0).plot.barh()
【讨论】:
.unstack(0)
做了我想要的
超级 ;) 很高兴能帮上忙!
@jezrael 有没有办法对图中的值进行排序?例如,在这种情况下,从下到上,您将有 Certified、Certified-withdrawn、Withdrawn、Denied。谢谢!以上是关于带 groupby 的条形图的主要内容,如果未能解决你的问题,请参考以下文章