我在Pandas中有一个Datastrame,在取消堆叠时看起来像这样
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世纪的数据之上。
答案 0 :(得分:0)
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")