[英]Pandas groupby group visualization by dividing between groups
我面临一个非常烦人的问题。 我有一个数据集,其中有不同地区和年份的销售额。
我想将不同地区的年度总销售额可视化。
以下是我的分组依据代码:
groups = df.groupby(["Region", "Year"])["Sales"].sum()
groups.plot.bar(color="blue")
plt.show()
我有两个问题:1.如何以某种方式将区域和年份条形图彼此分开,这样我的图表看起来确实令人困惑? 分隔线或实际上是荧光笔也可以,或者更大的间隙对我来说是一个很好的解决方案。 (请看下面,我的意思是:) 要么
我根本不知道如何解决这个问题。
问题2。如何按销售量最高的地区,然后是年销售量第二高的地区排序此图像,依此类推? 一种基于区域的降序排序。
我尝试了下面的代码:
groups = df.groupby(["Region", "Year"])["Sales"].sum()
groups2=groups.sort_values(axis=[0][1],ascending=False)
groups.plot.bar(color="blue")
plt.show()
但是我得到列表索引超出范围错误。 使用axis = [0]不能解决问题。
非常感谢您的提前帮助!
根据ChrisD的建议,您可以使用seaborn的catplot
获得工作结果,以按区域将条形图显示在不同的方面。
sns.catplot(x='Year', y='Sales', col='Region', data=groups, kind='bar')
您可能需要格式化纵横比以用于显示。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.