🧑 博主簡介:曾任某智慧城市類企業
算法總監
,目前在美國市場的物流公司從事高級算法工程師
一職,深耕人工智能領域,精通python數據挖掘、可視化、機器學習等,發表過AI相關的專利并多次在AI類比賽中獲獎。CSDN人工智能領域的優質創作者,提供AI相關的技術咨詢、項目開發和個性化解決方案等服務,如有需要請站內私信或者聯系任意文章底部的的VX名片(ID:xf982831907
)
💬 博主粉絲群介紹:① 群內初中生、高中生、本科生、研究生、博士生遍布,可互相學習,交流困惑。② 熱榜top10的常客也在群里,也有數不清的萬粉大佬,可以交流寫作技巧,上榜經驗,漲粉秘籍。③ 群內也有職場精英,大廠大佬,可交流技術、面試、找工作的經驗。④ 進群免費贈送寫作秘籍一份,助你由寫作小白晉升為創作大佬。⑤ 進群贈送CSDN評論防封腳本,送真活躍粉絲,助你提升文章熱度。有興趣的加文末聯系方式,備注自己的CSDN昵稱,拉你進群,互相學習共同進步。
【數據可視化-94】2025 亞洲杯總決賽數據可視化分析:澳大利亞隊 vs 中國隊
- 一、引言
- 二、數據準備
- 2.1 澳大利亞隊(sheet1)
- 2.2 中國隊(sheet2)
- 三、環境搭建
- 四、數據可視化
- 4.1 柱狀圖:得分排名
- 4.2 折線圖:投籃命中率
- 4.3 餅圖:總籃板占比
- 4.4 柱狀圖:出場時間分布
- 4.5 雷達圖:總籃板、助攻、搶斷、蓋帽、失誤、犯規
- 五、生成可移動的可視化大屏
- 四、可視化結果
- 五、分析總結
一、引言
??2025 年亞洲杯于 2025 年 8 月 18 日凌晨落下帷幕,中國隊在決賽中以 1 分之差惜敗澳大利亞隊,盡管未能奪冠,但這一成績已是中國隊近十年來的最佳表現。本文將通過 Python 和 Pyecharts 對兩隊球員的技術統計進行可視化分析,從多個維度展示兩隊球員的表現,并生成炫酷的可視化大屏。
二、數據準備
??本次分析的數據集包含兩個 sheet:sheet1 是澳大利亞隊的技術統計,sheet2 是中國隊的技術統計。以下是部分數據:
2.1 澳大利亞隊(sheet1)
球員 | 位置 | 出場時間 | 投籃 | 三分 | 罰球 | 前籃板 | 后籃板 | 總籃板 | 助攻 | 搶斷 | 蓋帽 | 失誤 | 犯規 | +/- | 得分 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
麥克維 | 28:12 | 5-12 | 1-6 | 0-0 | 0 | 0 | 0 | 2 | 0 | 0 | 0 | 2 | 2 | 11 | |
麥格尼 | 26:15 | 1-4 | 0-0 | 2-4 | 1 | 4 | 5 | 5 | 3 | 3 | 1 | 3 | 18 | 4 | |
庫克斯 | 31:12 | 13-17 | 0-0 | 4-11 | 4 | 5 | 9 | 2 | 0 | 0 | 2 | 2 | 4 | 30 | |
… | … | … | … | … | … | … | … | … | … | … | … | … | … | … | … |
2.2 中國隊(sheet2)
球員 | 位置 | 出場時間 | 投籃 | 三分 | 罰球 | 前籃板 | 后籃板 | 總籃板 | 助攻 | 搶斷 | 蓋帽 | 失誤 | 犯規 | +/- | 得分 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
趙睿 | 24:46 | 2-10 | 0-6 | 6-7 | 0 | 5 | 5 | 6 | 0 | 0 | 1 | 4 | 5 | 10 | |
胡金秋 | 27:52 | 8-10 | 0-0 | 4-4 | 5 | 5 | 10 | 1 | 1 | 1 | 2 | 2 | -1 | 20 | |
程帥澎 | 21:24 | 4-7 | 2-5 | 2-4 | 0 | 1 | 1 | 0 | 0 | 0 | 2 | 3 | -17 | 12 | |
… | … | … | … | … | … | … | … | … | … | … | … | … | … | … | … |
三、環境搭建
??在開始之前,確保已經安裝了以下 Python 包:
pip install pandas pyecharts openpyxl
四、數據可視化
??以下是完整的 Python 代碼,用于讀取數據、進行可視化分析,并生成炫酷的可視化大屏。
import pandas as pd
from pyecharts.charts import Bar, Line, Pie, Radar, Page
from pyecharts import options as opts
from pyecharts.globals import ThemeType# 讀取數據
df_australia = pd.read_excel("2025亞洲杯總決賽數據.xlsx", sheet_name=0)
df_china = pd.read_excel("2025亞洲杯總決賽數據.xlsx", sheet_name=1)# 數據處理
def process_data(df):df['出場時間'] = df['出場時間'].apply(lambda x: int(x.split(':')[0]) + int(x.split(':')[1]) / 60)df['投籃命中率'] = df['投籃'].apply(lambda x: int(x.split('-')[0]) / int(x.split('-')[1]) if int(x.split('-')[1]) > 0 else 0)df['三分命中率'] = df['三分'].apply(lambda x: int(x.split('-')[0]) / int(x.split('-')[1]) if int(x.split('-')[1]) > 0 else 0)df['罰球命中率'] = df['罰球'].apply(lambda x: int(x.split('-')[0]) / int(x.split('-')[1]) if int(x.split('-')[1]) > 0 else 0)return dfdf_australia = process_data(df_australia)
df_china = process_data(df_china)
4.1 柱狀圖:得分排名
bar = (Bar(init_opts=opts.InitOpts(width="1000px", height="600px", bg_color="#0d0735")).add_xaxis(df_australia['球員'].tolist() + df_china['球員'].tolist()).add_yaxis("得分", df_australia['得分'].tolist() + df_china['得分'].tolist(), category_gap="50%")
)
4.2 折線圖:投籃命中率
line = (Line(init_opts=opts.InitOpts(width="1000px", height="600px", bg_color="#0d0735")).add_xaxis(df_australia['球員'].tolist() + df_china['球員'].tolist()).add_yaxis("投籃命中率", df_australia['投籃命中率'].tolist() + df_china['投籃命中率'].tolist())
)
4.3 餅圖:總籃板占比
pie = (Pie(init_opts=opts.InitOpts(width="1000px", height="600px", bg_color="#0d0735")).add("", [list(z) for z in zip(df_australia['球員'], df_australia['總籃板'])] + [list(z) for z in zip(df_china['球員'], df_china['總籃板'])])
)
4.4 柱狀圖:出場時間分布
map_ = (Bar(init_opts=opts.InitOpts(width="1000px", height="600px", bg_color="#0d0735")).add_xaxis(df_australia['球員'].tolist() + df_china['球員'].tolist()).add_yaxis("出場時間", df_australia['出場時間'].tolist() + df_china['出場時間'].tolist(), category_gap="50%")
)
4.5 雷達圖:總籃板、助攻、搶斷、蓋帽、失誤、犯規
# 雷達圖的 Schema
c_schema = [{"name": "總籃板", "max": 40},{"name": "助攻", "max": 25},{"name": "搶斷", "max": 10},{"name": "蓋帽", "max": 10},{"name": "失誤", "max": 15},{"name": "犯規", "max": 25},
]# 初始化雷達圖
radar = Radar(init_opts=opts.InitOpts(width="1000px", height="600px", bg_color="#0d0735"))# 添加 Schema
radar.add_schema(schema=c_schema, shape="circle")# 添加數據
radar.add("澳大利亞隊", [australia_mean], color="#f9713c")
radar.add("中國隊", [china_mean], color="#b3e4a1")
五、生成可移動的可視化大屏
page = Page(layout=Page.DraggablePageLayout, page_title="2025亞洲杯總決賽_球隊表現可視化分析")
page.add(bar, line, pie, map_, radar)
page.render("2025亞洲杯總決賽_球隊表現可視化大屏.html")
四、可視化結果
運行上述代碼后,會生成一個名為 2025亞洲杯總決賽_球隊表現可視化大屏.html
的文件。打開該文件,可以看到以下內容:
五、分析總結
??通過對 2025 年亞洲杯總決賽數據的可視化分析,我們可以得出以下結論:
- 得分能力:澳大利亞隊在得分能力上略占優勢,尤其是庫克斯和加洛韋的表現非常突出。中國隊的胡金秋和趙睿也有較高的得分,但整體得分能力稍遜一籌。
- 投籃命中率:澳大利亞隊的投籃命中率普遍較高,顯示出較高的進攻效率。中國隊的投籃命中率相對較低,但胡金秋和趙睿的表現較為突出。
- 籃板能力:中國隊在籃板球的爭搶上表現出色,尤其是胡金秋以 10 個總籃板領先。這表明中國隊在內線的防守和籃板球控制上做得較好。
- 助攻與搶斷:澳大利亞隊的麥格尼在助攻和搶斷上表現突出,而中國隊的趙睿和程帥澎也有不俗的表現,但在整體數據上稍遜一籌。
- 出場時間:兩隊的主力球員出場時間普遍較長,顯示出兩隊在比賽中都較為依賴主力球員的表現。替補球員的出場時間相對較短,但也有一定的貢獻。
??盡管中國隊在決賽中惜敗澳大利亞隊,但這一成績已是中國隊近十年來的最佳表現。通過本次比賽,中國隊展現了強大的團隊精神和競技水平,未來可期。