Skip to main content
 首页 » 编程设计

python之从 Pandas 数据框中绘制堆积条形图

2025年05月04日15wuhuacong

我有数据框:

payout_df.head(10)

复制以下 excel 图的最简单、最智能和最快的方法是什么?

我尝试了不同的方法,但无法将所有内容都安排妥当。

谢谢

请您参考如下方法:

如果您只想要一个堆积条形图,那么一种方法是使用循环绘制数据框中的每一列,并只跟踪累积总和,然后将其作为 bottom 传递pyplot.bar

的参数
import pandas as pd 
import matplotlib.pyplot as plt 
 
# If it's not already a datetime 
payout_df['payout'] = pd.to_datetime(payout_df.payout) 
 
cumval=0 
fig = plt.figure(figsize=(12,8)) 
for col in payout_df.columns[~payout_df.columns.isin(['payout'])]: 
    plt.bar(payout_df.payout, payout_df[col], bottom=cumval, label=col) 
    cumval = cumval+payout_df[col] 
 
_ = plt.xticks(rotation=30) 
_ = plt.legend(fontsize=18)