我有一个数据框-df,如下所示:
df = pd.DataFrame({"Card_name":['AAA','AAA','AAA','BBB','BBB','BBB','CCC','CCC','CCC'],
"Amount":['900','800','700','600','500','400','400','300','200'],
"Category" :['Grocery','Bank','Gas','Bank','Grocery','Recreation',
'Bank','Grocery','Gas']})
我想构建一个可视化图,在其中可以显示所有“ Card_name ”类别以及金额。也许是堆叠的条形图,其中显示了每个“卡名”的所有类别。 堆积的条形图中的每个区域(区域的大小)取决于金额。 我尝试了许多可能的方法,但是我无法想象?任何帮助将不胜感激。
答案 0 :(得分:0)
首先旋转您的df
,然后调用给定选项stacked=True
:
df = pd.DataFrame({"Card_name":['AAA','AAA','AAA','BBB','BBB','BBB','CCC','CCC','CCC'],
"Amount":['900','800','700','600','500','400','400','300','200'],
"Category" :['Grocery','Bank','Gas','Bank','Grocery','Recreation','Bank','Grocery','Gas']})
df['Amount'] = pd.to_numeric(df['Amount'])
df.pivot(index='Card_name', columns='Category', values='Amount').plot(kind='bar', stacked=True)