使用两个数据框绘制并排条形图

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用两个数据框绘制并排条形图相关的知识,希望对你有一定的参考价值。

我有2个数据框,其中包含品牌和数量。

例:

brand | count
------+-------
Gucci | 1234
Chanel| 234444

DF1的品牌多于DF2。我想创建一个条形图,其中x轴是所有品牌,y轴是计数。我不知道如何实现这一点,因此我得到了按品牌分组的每个数据框的并排条形图。

  ax = df_pred.plot()
  prev_pred.plot(ax=ax)
  plt.show()

我试过这个代码,但我不能按品牌分组。我使用sns.barplot创建单独的条形图,但我想覆盖它们。我想要DF1中的所有品牌,因此DF2的一些计数将为0,但这是我想要比较的。任何帮助深表感谢。

答案

达蒙:

df1 = pd.DataFrame(dict(Brand=[*'GC'], Count=[4, 6]))
df2 = pd.DataFrame(dict(Brand=[*'GCXYZ'], Count=[3, 6, 1, 3, 5]))

pd.concat({
    'One': df1.set_index('Brand').Count, 'Two': df2.set_index('Brand').Count
}, axis=1).plot.bar()

enter image description here

以上是关于使用两个数据框绘制并排条形图的主要内容,如果未能解决你的问题,请参考以下文章

matplotlib:在条形图上绘制多列熊猫数据框

在绘制条形图时尝试更改数字格式

如何将熊猫数据框中每列中唯一值的数量绘制为条形图?

在R中的单个图上绘制两个变量的条形图和第三个变量的线图

如何使用 ggplot 创建并排条形图(用于多个系列)?

使用 matplotlib 绘制堆积条形图,保持 pandas 数据框的顺序,因为它使用 python