Matplotlib實戰(zhàn)之柱狀圖繪制詳解
柱狀圖,是一種使用矩形條,對不同類別進行數(shù)值比較的統(tǒng)計圖表。
在柱狀圖上,分類變量的每個實體都被表示為一個矩形(通俗講即為“柱子”),而數(shù)值則決定了柱子的高度。
1. 主要元素
柱狀圖是一種用長方形柱子表示數(shù)據(jù)的圖表。
它包含三個主要元素:
- 橫軸(x軸):表示數(shù)據(jù)的類別或時間。
- 縱軸(y軸):表示數(shù)據(jù)的數(shù)量或百分比。
- 柱子:用于表示每個數(shù)據(jù)類別或時間段的數(shù)量或百分比,柱子的高度與數(shù)據(jù)的大小成比例。
2. 適用的場景
柱狀圖適用于以下分析場景:
- 比較不同類別或時間段的數(shù)量或百分比。
- 顯示數(shù)據(jù)的分布情況,如數(shù)據(jù)的最大值、最小值、平均值等。
- 強調(diào)數(shù)據(jù)的變化趨勢。
- 比較不同組之間的差異。
- 分析數(shù)據(jù)的增長或下降情況。
3. 不適用的場景
柱狀圖不適用于以下分析場景:
- 數(shù)據(jù)之間存在比例關系,如占比、比率等,此時應該使用餅圖或堆積圖。
- 數(shù)據(jù)之間存在時間序列關系,此時應該使用折線圖。
- 數(shù)據(jù)之間存在空間關系,此時應該使用地圖。
- 數(shù)據(jù)之間存在相關性關系,此時應該使用散點圖。
4. 分析實戰(zhàn)
這次選用王者榮耀2023年KPL春季賽的戰(zhàn)隊數(shù)據(jù):databook.top/wzry/2023-spring
4.1. 數(shù)據(jù)來源
fp = "d:/share/league-2023春季賽.csv" df = pd.read_csv(fp) df.loc[:, ["排名", "戰(zhàn)隊", "比賽場次", "勝場"]]
4.2. 數(shù)據(jù)清理
本次實戰(zhàn)用柱狀圖展示前6名的比賽場次和勝場,也就是每個戰(zhàn)隊有2個柱子。
df.loc[:5, ["排名", "戰(zhàn)隊", "比賽場次", "勝場"]]
4.3. 分析結(jié)果可視化
data = df.loc[:5, ["排名", "戰(zhàn)隊", "比賽場次", "勝場"]] with plt.style.context("seaborn-v0_8"): fig = plt.figure() ax = fig.add_axes([0.1, 0.1, 0.8, 0.8]) teams = data["戰(zhàn)隊"].tolist() games = { "比賽場次": data["比賽場次"].tolist(), "勝場": data["勝場"].tolist(), } width = 0.25 multiplier = 0 x = np.arange(len(teams)) for name, vals in games.items(): offset = width*multiplier rects = ax.bar(x+offset, vals, width, label=name) ax.bar_label(rects, padding=3) multiplier+=1 ax.set_title("2023-KPL春季賽前六名") ax.set_xticks(x+0.1, teams) ax.legend(loc="upper left")
第一名重慶狼隊,比賽場次總數(shù)倒數(shù)第二,但是勝場數(shù)確實第一,勝率明顯高于其他隊伍,不愧是冠軍隊伍。
戰(zhàn)隊,選手和各個英雄的數(shù)據(jù)都已經(jīng)整理好分享在上面的URL中,感興趣的話可以自己分析看看其他數(shù)據(jù)情況。
以上就是Matplotlib實戰(zhàn)之柱狀圖繪制詳解的詳細內(nèi)容,更多關于Matplotlib柱狀圖的資料請關注腳本之家其它相關文章!
相關文章
python 隊列基本定義與使用方法【初始化、賦值、判斷等】
這篇文章主要介紹了python 隊列基本定義與使用方法,結(jié)合實例形式分析了Python隊列的定義、初始化、賦值、判斷等相關操作技巧,需要的朋友可以參考下2019-10-10python實現(xiàn)爬蟲統(tǒng)計學校BBS男女比例(一)
這篇文章主要介紹了python實現(xiàn)爬蟲統(tǒng)計學校BBS男女比例,,需要的朋友可以參考下2015-12-12