我尝试以透视表的方式分组图表。我想用pandas/matplotlib以百分比的方式堆叠['post_datetime','claimed']来绘制我的数据,其中图表条将导致100%划分为True/False 'claimed'数据。
这是从我的数据库中摘录的:
post_datetime,claimed,percent,claimed_pct,unclaimed_pct
2016,True,1.0,1.0,
2017,True,1.0,1.0,
2018,False,0.25342,,0.25342
2018,True,0.74658,0.74658,
2019,False,0.3971,,0.3971
2019,True,0.6029,0.6029,
2020,False,0.44128,,0.44128
2020,True,0.55872,0.55872,
2021,False,0.5594,,0.5594
2021,True,0.4406,0.4406,
2022,False,0.5316,,0.5316
2022,True,0.4684,0.4684,
到目前为止,我使用下面的代码得到的最好的结果是一个下一个条形图(我想要它100%,分为比例或真和假'claiem',这是由'百分比'在我的数据库中定义的。
ax = year_claim_df.plot(x='post_datetime',
y='claimed_pct',
kind='bar',
color='red'
)
year_claim_df.plot(x='post_datetime',
y='unclaimed_pct',
kind='bar',
color='blue',
ax=ax
)
plt.show()
这是我得到的图表:
x1c 0d1x但是我会将所有的条形图都设置为1或100%,使用真/假“声明”列和“百分比”列的比例进行分割着色
我希望图表是这样的(不是我的数据):
Tx for the help.最好的
1条答案
按热度按时间xpcnnkqh1#
使用
pivot
和rename
,然后使用DataFrame.plot.bar
: