加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

python – Pandas – 使用多列绘制未堆叠的DataFrame图形

发布时间:2020-12-20 13:12:47 所属栏目:Python 来源:网络整理
导读:我在Pandas中有一个DataFrame,在取消堆叠时看起来像这样 Unique SessionsDate 2016-06-21 2016-06-29NameABCD 995 4,088EFGH 8 25OPEF 1 1 如何让Pandas从此DataFrame绘制堆积条形图,其中x轴为名称,y轴为堆叠日期的数字? # df is the stacked DataFrameplot
我在Pandas中有一个DataFrame,在取消堆叠时看起来像这样

Unique Sessions
Date      2016-06-21 2016-06-29
Name
ABCD             995      4,088
EFGH               8         25
OPEF               1          1

如何让Pandas从此DataFrame绘制堆积条形图,其中x轴为名称,y轴为堆叠日期的数字?

# df is the stacked DataFrame
plot = df.unstack().plot(kind='bar',stacked=True,title="Test")
plot.set_xlabel("Name")
plot.set_ylabel("Num")
plt.savefig('testplot.png',dpi=1000)

此代码将创建一个条形图,但仅考虑2016-06-21并且不会将2016-06-29的数字叠加在21世纪的数据之上.

解决方法

建立

df = pd.DataFrame([[995,4088],[8,25],[1,1]],index=pd.Index(['ABCD','EFGH','OPEF'],name='Name'),columns=pd.MultiIndex.from_product([['Unique Sessions'],['2016-06-21','2016-06-29']],names=[None,'Date']))

print df

     Unique Sessions           
Date      2016-06-21 2016-06-29
Name                           
ABCD             995       4088
EFGH               8         25
OPEF               1          1

我做了什么

plot = df['Unique Sessions'].plot.bar(stacked=True,title="Test")
plot.set_xlabel("Name")
plot.set_ylabel("Num")

enter image description here

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读