【问题标题】:Python Pandas' stacked BarPlot by groupPython Pandas 按组堆叠的 BarPlot
【发布时间】:2021-11-17 16:11:09
【问题描述】:

我有一个这样的数据框:

DATE VALUE TYPE
2021-01-11 57 A
2021-02-11 34 B
2021-03-11 43 A
2021-04-11 15 B
...

我的问题是如何绘制条形图,当然是按日期排序并按“类型”分组的平均每月

我正在使用带有这段代码摘录的 Pandas:

    df = df.set_index('DATE') 
    df.index = pd.to_datetime(df.index)

    df = df.resample('M').mean()
    df.plot(kind='bar',stacked=True)

我想绘制一个堆积条形图,但我不知道如何...

【问题讨论】:

  • “按'TYPE'分组”是什么意思?
  • 我正在为我的 DataFrame 的两个 TYPE (A/B) 寻找具有堆叠 VALUE 的条形图。

标签: python pandas matplotlib


【解决方案1】:

不确定我是否理解正确,但如果你想按类型堆叠值,日期为 x 轴,我会使用数据透视(不要先设置索引):

df = df.pivot('DATE', 'TYPE', 'VALUE')
df.plot(kind='bar', stacked=True, rot=0)
plt.show()

用稍微编辑的表格来显示堆叠:

DATE VALUE TYPE
2021-01-11 57 A
2021-02-11 34 A
2021-02-11 12 B
2021-03-11 43 A
2021-04-11 15 B

你会得到以下结果:

【讨论】:

  • 谢谢!这就是我的意思。
猜你喜欢
  • 1970-01-01
  • 2018-10-14
  • 2019-05-04
  • 2018-04-20
  • 2018-07-24
  • 2018-02-11
  • 2017-03-21
  • 1970-01-01
  • 2023-01-11
相关资源
最近更新 更多