簡體   English   中英

如何使用 Pandas 繪制這個令人困惑的多條形圖?

[英]How do I plot this confusing multiple bar plot using Pandas?

作為更大數據集的一部分,我有一個關於銀行的列(值是不同的名稱)和一個關於抵押狀態的列(值:接受;拒絕)。 我在創建一個多條形圖時遇到了很多麻煩,該圖將銀行作為每個 x 值,然后每個值上的兩個條形表示接受的數量與拒絕的數量。 附上我想要的最終結果的模型,但我不知道如何到達那里。 我需要使用 groupby 嗎? 示例圖

這是一個快速的MVCE:

from seaborn import load_dataset
import pandas as pd

df_tip = load_dataset('tips')
print(df_tip.head())

原始數據幀的輸出:

   total_bill   tip     sex smoker  day    time  size
0       16.99  1.01  Female     No  Sun  Dinner     2
1       10.34  1.66    Male     No  Sun  Dinner     3
2       21.01  3.50    Male     No  Sun  Dinner     3
3       23.68  3.31    Male     No  Sun  Dinner     2
4       24.59  3.61  Female     No  Sun  Dinner     4

將數據框重塑為如下所示,將分組條作為列,將 x 軸作為數據框行索引:

df_chart = df_tip.groupby(['day', 'sex'])['total_bill'].sum().unstack()
print(df_chart)

輸出 df_chart:

sex      Male  Female
day                  
Thur   561.44  534.89
Fri    198.57  127.31
Sat   1227.35  551.05
Sun   1269.46  357.70

用熊貓圖繪制:

df_chart.plot.bar()

圖表:

在此處輸入圖片說明

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM