NBA激战正酣,首轮除掘金和马刺的较量还没有结束外,其余对决都已经结束,本文将手把手带你可视化分析下各球队的首轮表现,同时将对次轮最受瞩目的火勇大战进行一个简单的前瞻分析!
- 发布于:2025-04-20 00:35:34
- 来源:24直播网
通过本文,你将学会python中使用matplotlib库绘制柱状图、散点图、雷达图的相关知识!咱们开始吧!
我们首先获取各球队季后赛首轮的数据,网址是:https://www.basketball-reference.com/playoffs/NBA_2019.html。首先选择Playoffs:
然后,下拉到球队技术统计这里,导出csv,如果无法直接倒出,可以复制到txt文件里面(我就是这么干的):
然后,我们再把对手表现的数据导出,这样基础数据就准备好了:
好了,我们使用代码将数据进行读取,首先导入所需要的库:
将数据使用pandas进行读取,看看数据如何:
同样,将对手表现的数据读入,但是这里列名需要修改一下:
将两个表按照队名进行merge,这样oppPTS列,可以表示场均失分,这也是我们在对手表现数据里面主要关注的列:
绘制柱状图,需要使用的是plt.bar方法,其主要输入的有两个参数,一个是x轴的值,一个是高度,比如,我们绘制一下各球队首轮平均得分的柱状图:
结果如下:
上面的图还是有几个问题的,首先,我们不希望X显示的是数值,我们希望展示各个球队名称的缩写,同时刻度可以不从0开始,这样看上去区分度不是十分的明显。
针对第一个问题,我们需要首先按顺序得到各个球队名称的缩写:
随后,将x轴的刻度设置为相应的队名:
针对第二个问题,我们需要限定y轴的范围,使用ylim方法:
这样,我们得到了下面的图片:
上面这部分的完整代码如下:
此时,我们可能想要将球队的得失分表示出来,代码如下:
绘制的结果如下:
这一部分,我们使用散点图来分析球队场均得失分,使用plt.scatter函数,分别指定各个点的x和y值:
得到的效果如下:
简单的绘制散点图,什么都看不出来,此时,我们提出两个需求,首先,能不能将各个球队的简称放到各个点的旁边,这样我们就能清楚知道哪个点代表哪个球队。其次,能不能在图中添加两条直线,分别表示球队得分和失分的平均值?我们一个一个来解决。
首先,将球队标记加入到图中,我们使用plt.annotate函数,该函数需要传入三个参数,依次是注释文本内容,被注释的坐标点,注释文字的坐标位置:
此时的效果就能满足我们的第一个需求:
对于第二个需求,我们使用plt.vlines和plt.hlines方法,对于plt.vlines方法,它是在图中绘制一条竖直线,因此需要指定x轴的坐标,同时需要指定y轴的起始坐标和结束坐标,对于plt.hlines方法,它是在图中绘制一条水平线,因此需要指定y轴的坐标,同时需要指定x轴的起始坐标和结束坐标:
结果如下:
基于上面的散点图,我们就能很快将十六支球队分为四个象限。
1)第一象限:进攻好,防守差,包含的球队有金州勇士、费城76人、洛杉矶快船、布鲁克林篮网
2)第二象限:进攻差,防守差,包含的球队有底特律活塞、俄克拉荷马雷霆、圣安东尼奥马刺
3)第三象限:进攻差,防守好,包含的球队有休斯顿火箭、奥兰多魔术、印第安纳步行者、犹他爵士、多伦多猛龙、波士顿凯尔特人
4)第四象限:进攻好,防守好,包含的球队有密尔沃基雄鹿、波特兰开拓者、丹佛掘金
哈哈,是不是跟你想象的不太一样,比如火箭怎么能说是进攻差的球队呢!因为他们的对手爵士是全联盟常规赛防守第一的球队,这种因素我们是无法通过这种图分析出来的。也就是说,数据不能表明一切!
勇士在今天的比赛中,凭借杜兰特的神奇表现,击败快船与火箭会师西部半决赛,这也是半决赛对决中最受人瞩目的。那么,我们通过雷达图来分析下两队在季后赛首轮的表现吧。这里要说明的是,我们的数据是在勇船第六场之前获取的,因此只有勇士五场的数据。
我们先来看看两队的基础数据,我们挑选了场均得分,场均失分、命中率、三分命中率、篮板、助攻、抢断、盖帽、失误等九项数据:
结果如下,其中2代表勇士,7代表火箭:
接下来,我们想通过雷达图来对比一下二者的这九项数据,matplotlib里面的雷达图貌似必须是统一刻度的,至少我目前还没有找到如何设置为不同刻度。因此,我们首先将二者的数据,用统一的标准,转换到0-1区间内:
绘制雷达图,使用的是极坐标系,因此,我们需要设置一下:
随后,我们获取勇士和火箭的数据,并取得对应的数据标签:
随后,我们基于label的数量,对整圆进行切分,在切分的同时,我们需要加入切分后的第一个元素,以形成一个闭环:
随后,便可以绘制我们的雷达图:
结果如下:
从雷达图来看,火箭除了在抢断和失分上占据一定优势外,其他各项数据均落后于勇士。不过还是刚才的那句话,数据不能体现一切,希望火勇双方能给我们带来一场精彩绝伦的较量。


- | 新浪体育直播,感受冰球赛事的热血激情
- | 足彩预测平台天天盈球竞彩足球比分介绍
- | 直播看体育软件,畅享各大赛事的精彩瞬间
- | 精彩纷呈的体育赛事直播
- | 泸州体育赛事:激情四溢的现场体验
- | 广东广播电视台采访在哪看
- | 鲨鱼TV是一款非常实用的视频观看应用,它的资源丰富、更新速度快,让用户能够随时随地观看自己想看的影视作品。该软件上汇聚了超多视频资源,这些视频资源可以满足不同用户的观影需求,用户可以根据自己的需求来选
- | 今日头条与抖音的打通带货无疑是一项备受瞩目的变革举措。这一举措为商家、创作者及消费者均带来了新的机遇与体验。在此,我们将深入探讨其打通的意义与影响。
- | 彤彤体育直播:精彩瞬间重温
- | 央视一5体育直播的璀璨时刻