山东在本届全运会金牌榜、奖牌榜上取得双料第一,德州三金一银一铜完美收官

核桃 345 0

【可视化】全运会历届金牌榜

第十四届全国运动会已经开始了,大家有看比赛吗?你最喜欢哪项运动?各位家乡选手都表现得如何?

借这个机会,我来给大家演示一个基本的数据采集并可视化的案例:

将历届全运会的金牌榜可视化

1. 数据整理

我没有找到现成的结构化数据表格,不过找到这样一个文本数据:

格式还算比较规整,稍微处理下就可以使用。(这里是1~12届,上一届第13届因为开始取消奖牌榜了,我就不管了,不影响我们展示)

于是我把数据全部复制下来,然后通过 SublimeText 的正则查找替换功能做一下初步的处理。平常一些简单的文本或数据处理,我都会这么做,不一定非要用代码处理。好一点的文本编辑器也都有类似的功能。

把多余的文字删除掉之后,剩下的就是只有空行和 ┃ 符号分隔的数据,用代码很容易读取:

import pandas as pd is_change = True count = 12 all_data = [] # 记录历届成绩 data = [] # 记录一届成绩 writer = pd.ExcelWriter('history.xls') watches = set() with open('history.txt') as f: for line in f: if line.strip(): # 非空行 if is_change: is_change = False # 读取、清理空格、记录数据 data.append([l.strip() for l in line.split('┃')]) else: # 遇到空行,结束一届的记录 if not is_change: # 记录数据 df = pd.DataFrame(data) all_data.append(df) # 写入文件 df.to_excel(writer, sheet_name=f'No.{count}', index=False) # 把前3名加入集合 top3 = list(df[1][:3]) watches.update(top3) # 重置参数 is_change = True count -= 1 data = [] writer.save()

将每届的奖牌榜存成一个单独的 DataFrame,再全部放进一个 list 列表里。顺便我还把数据存成了 excel。(文末会提供数据和代码下载)

同时,为了展示方便,我只筛选出了历届曾经拿过前三的队伍,用于后续作图,分别是:

上海、北京、山东、广东、江苏、解放军、辽宁

从所有数据中,把这几支队伍的金牌数依次取出,保存成列表:

gold = {} all_data.reverse() for team in watches: gold[team] = [] for data in all_data: gold[team].append(float(data[data[1]==team][2]))2. Matplotlib 折线图

Python 做可视化图表最常用的库就是 matplotlib。代码很简单:

import matplotlib.pyplot as plt for team in gold: plt.plot(gold[team], linewidth=4, label=team) plt.legend()

折线图很适合展示随时间变化的数据,也适合多组同类数据的对比。

比如这张图上,可以直观地看出,解放军队在最初两届获得了远超其他队的金牌,而像山东、辽宁、江苏的金牌数量整体呈比较明显的上升趋势。

如果不做可视化,只是盯着密密麻麻的数字,那可能眼睛都要看瞎了。

顺便说下,图表上显示中文的时候会出现显示为 □ 的情况,需要额外做处理,我这里用的方法是自己下载一个字体文件使用:

from pylab import mpl font = mpl.font_manager.FontProperties(fname='simhei.ttf', size=15) plt.legend(prop=font)

另外还有一种方法是:

plt.rcParams['font.sans-serif'] = ['SimHei']3. PyEcharts 折线图

Matplotlib 的图表简单实用,功能也很强大,但都是静态的。如果需要可交互的动态图表,则可以使用 pyecharts 库。

用法也很简单:

from pyecharts.charts import Line line = Line() line.add_xaxis(xaxis_data=range(1, 13)) for team in gold: line.add_yaxis(team, gold[team]) line.render_notebook()

在这个图上,你可以选择隐藏/显示部分数据,鼠标移到某个节点上是也会显示详细信息。

特别提醒两点:

1. 我这里是在 jupyter notebook 上进行开发(数据分析可视化推荐使用),所以可以直接调用 .render_notebook() 显示动态图表。如果你是其他 IDE,可以改成 .render("文件名.html") 的方式输出结果页面。

2. PyEcharts 之前做过较大更新,以至于网上很多教程里的用法在新版本上已经无法使用了。所以你在通过网上资料学习 PyEcharts 时,一定要看清版本,建议看新出的教程或官网的例子。

以上就是将全运会历届金牌榜进行可视化展示的学习案例。有什么疑问,欢迎大家在留言中讨论,或将代码问题发至我们的答疑论坛上,我将会为大家解答。

数据及代码:

如果文章对你有帮助,欢迎转发/点赞/收藏~

----

获取更多教程和案例,

欢迎搜索及关注:Crossin的编程教室

每天5分钟,轻松学编程。

第十四届全运会收官 山东58金160枚奖牌榜首“四连冠”

北京时间年9月26日晚,第十四届全运会个项目比赛悉数收官,最终的奖牌榜尘埃落定。

本届全运会共有35个代表团参加31个大项、358个小项的竞技项目比赛,除宁夏以外均有奖牌收获,4个代表团奖牌总数超过100枚。

和上届相比,本届全运会竞技成绩再次取得突破,56个小项的成绩优于上届,17个小项的成绩超过东京奥运会。

据央视新闻报道,射击、举重项目9人1队12次超12项世界纪录,田径项目1队1次创1项亚洲纪录,射击、场地自行车、举重、田径、攀岩、游泳项目13人7队22次创22项全国纪录,举重项目7人10次创10项全国青年纪录。

其中,山东代表团获得58枚金牌、55枚银牌、47枚铜牌,总计160枚奖牌同时占据金牌榜及奖牌榜榜首,连续四届全运会排名第一。

广东、浙江、江苏、上海代表团在金牌榜和奖牌榜均排在二到五位。广东代表团收获54金32银56铜,总计142枚奖牌;浙江代表团收获44金35银37铜,总计116枚奖牌;江苏代表团收获42金35银39铜,总计116枚奖牌;上海代表团收获36金27银28铜,总计91枚奖牌。

湖北代表团27金18银15铜,总计60枚奖牌;

福建代表团25金17银18铜,总计60枚奖牌;

湖南代表团25金13银9铜,总计47枚奖牌;

四川代表团22金19银23铜,总计64枚奖牌;

辽宁代表团22金16银22铜,总计60枚奖牌;

北京代表团21金14银15铜,总计50枚奖牌;

陕西代表团19金15银23铜,总计57枚奖牌;

天津代表团18金10银16铜,总计44枚奖牌;

河南代表团16金11银17铜,总计44枚奖牌;

河北代表团15金13银16铜,总计44枚奖牌;

安徽代表团12金9银12铜,总计33枚奖牌;

内蒙代表团8金5银10铜,总计23枚奖牌;

云南代表团7金9银8铜,总计24枚奖牌;

广西代表团7金7银8铜,总计22枚奖牌;

新疆代表团7金7银7铜,总计21枚奖牌;

陕西代表团6金9银13铜,总计28枚奖牌;

江西代表团5金8银6铜,总计19枚奖牌;

黑龙江代表团4金4银6铜,总计14枚奖牌;

吉林代表团4金3银8铜,总计15枚奖牌;

海南代表团4金2银1铜,总计7枚奖牌;

甘肃代表团3金5银3铜,总计11枚奖牌;

贵州代表团3金4银8铜,总计15枚奖牌;

西藏代表团3金1银2铜,总计6枚奖牌;

重庆代表团2金8银2铜,总计12枚奖牌;

前卫体协代表团2金2银1铜,总计5枚奖牌;

香港代表团2金5铜,总计7枚奖牌;

青海代表团1金3银2铜,总计6枚奖牌;

火车头体协代表团、澳门代表团各获1枚铜牌。

全运会最后一天比赛落下帷幕,最终的全运会「金牌榜」你怎么看?对于各省的奖牌数和实力如何评价?

辽宁掉得太快。辽宁至今仍然是我们培养出奥运冠军最多的省份。在很多届全运会上与八一争夺奖牌榜第一的位置。如今前十都进不了,有点出人意料了。感觉辽篮是辽宁体育的最后一张名片了。辽宁女排如果丁霞和颜妮一退役,很可能也会掉进保级圈。

北京悬崖急坠。如果辽宁体育的衰落在意料之中,北京就属于悬崖急坠了。全运会一直稳在前十的位置,这一届直接闪崩 。如果辽宁体育衰退可以归结到经济原因,北京确实就说不清了,男篮没有竞争力了,女排也八强不入了。

重庆上届全运会还有六块半金牌,今年只有两块。施廷懋没参赛是原因之一,但一GDP与广州比肩的直辖市,三千多万人口,金牌数连西藏都比不过,真有点那个啥了。直辖二十四年了,就算是直辖之后重建体育系统,也正是应该出成绩的时候了。

西藏青海新疆有特色。希望继续发挥高原地域优势或者人种特色,能促进中国体育再进步。尤其是新疆,高大健壮的汉子姑娘们,可以在大球、田径和游泳项目上整出特色来,弥补中国体育的短板。

山东在本届全运会金牌榜、奖牌榜上取得双料第一,德州三金一银一铜完美收官

山东在本届全运会金牌榜、奖牌榜上取得双料第一,德州三金一银一铜完美收官

9月26日晚,第十四届全运会比赛全部结束,27日晚上举行本届全运会闭幕式。山东代表团在最后一天比赛中收获4金,最终以58枚金牌、55枚银牌、47枚铜牌,总计160枚奖牌完美收官。金牌总数与奖牌总数均位列全国第一,实现了全运会金牌榜的四连冠。在奖牌榜上,广东与浙江代表团分别以54金、44金位列二、三位,江苏代表团则以42金排名第四。其中,第二名广东是54金32银56铜。下一届全运会将会由广东、香港、澳门承办。年,让我们相聚第十五届全国运动会。

9月25日,从第十四届全运会的赛场传来好消息,德州市运动员崔寅生在帆船激光级比赛中获得铜牌!至此,本届全运会德州市运动员共获得3金1银1铜完美收官!

△崔寅生(左)与教练(右)此前刘俊奎勇夺全运会德州首金!

△刘俊奎 资料图9月18日下午第十四届全运会男子七人制橄榄球决赛中德州市运动员刘俊奎携手队友以26:7战胜北京队夺得冠军实现山东男子橄榄球队在全运会比赛中的“三连冠”这也是德州市选手在本届全运会上获得的首枚金牌

9月19日德州运动员郭淋淋一日摘得两金!

△郭淋淋 资料图上午赛艇女子双人单桨夺冠下午赛艇女子八人单桨有舵手决赛携手队友夺得冠军!

9月23日德州运动员程冲

△程冲 资料图参加全运会田径男女混合4×400米接力获得银牌!

第十四届全运会德州运动员获奖信息

刘俊奎:全运会男子七人制橄榄球 金牌郭淋淋:全运会赛艇女子双人单桨无舵手 金牌郭淋淋:全运会赛艇女子八人单桨有舵手 金牌程冲:全运会田径男女混合4×400米接力 银牌崔寅生:全运会帆船激光级 铜牌另外,在近期结束的东京奥运会赛艇比赛中,德州运动员郭淋淋所在的中国赛艇队女子八人单桨有舵手项目参加决赛,最终经过全队共同的努力获得该项目铜牌。此次出征奥运实现了德州运动员参赛奥运会“零”的突破。