【04 爬虫+可视化 动态展示2020东京奥运会奖牌世界分布】
大家好,我是 【Python当打之年】
东京奥运会已落下帷幕,中国军团共获得88枚奖牌,其中38枚金牌、32枚银牌、18枚铜牌,金牌榜和奖牌榜仅次于美国,排名第2。
本期主要利用pyecharts给大家展示奥运金金牌、银牌、铜牌以及奖牌总数的世界地图分布,希望对你有所帮助。
先看看效果:
1. 导入模块
import requests import json import pandas as pd from pyecharts.charts import Map, Timeline from pyecharts import options as opts from pyecharts.commons.utils import JsCode from pyecharts.globals import ThemeType
升级 pyecharts 包:可视化部分需要用到 pyecharts==1.9.0,已安装其他低版本的需要升级,如果未安装过pyecharts,直接pip安装就是最新版本。
2. 数据爬取
数据来源于某视频网站接口,如下图:
爬取部分比较简单,这里不做具体分析,仅给出爬取代码:
url = '#39; r = requests.get(url, timeout=30) r.raise_for_status() r.encoding = r.apparent_encoding datas = r.json()['body']['allMedalData'] df = pd.DataFrame() for data in datas: df = df.append([[ data['countryName'], data['goldMedalNum'], data['silverMedalNum'], data['bronzeMedalNum'], data['totalMedalNum']]]) df.columns = ['国家', '金牌', '银牌', '铜牌', '奖牌']
结果:
3. 地图展示
3.1 东京奥运会奖牌数世界分布
代码:
m0 = ( Map() .add("奖牌数", [list(z) for z in zip(df['国家'].values, df['奖牌'].values)], "world", is_map_symbol_show=False, is_roam=False, name_map=name_map) .set_series_opts(label_opts=opts.LabelOpts(is_show=False)) .set_global_opts( title_opts=opts.TitleOpts(), legend_opts=opts.LegendOpts(is_show=False), visualmap_opts=opts.VisualMapOpts(is_show=True, max_=120, is_piecewise=True, split_number = 8, ), ) ) m0.render_notebook()
效果:
3.2 东京奥运会金牌世界分布
代码:
m1 = ( Map() .add("金牌", [list(z) for z in zip(df['国家'].values, df['金牌'].values)], "world", is_map_symbol_show=False, is_roam=False, name_map=name_map) .set_series_opts(label_opts=opts.LabelOpts(is_show=False)) .set_global_opts( title_opts=opts.TitleOpts(), legend_opts=opts.LegendOpts(is_show=False), visualmap_opts=opts.VisualMapOpts(is_show=True, max_=40, is_piecewise=True, split_number = 8, range_color=['#FFFFE0', '#FFA07A', '#CD5C5C', '#8B'] ), ) ) m1.render_notebook()
效果:
3.3 东京奥运会金、银、铜世界分布
效果1:
效果2:
4. 完整代码+数据:当打之年:源码下载 | Python可视化系列文章资源(源码+数据)
更多内容(公众号:Python当打之年)。
以上就是本期为大家整理的全部内容了,赶快练习起来吧,喜欢的朋友可以点赞、收藏也可以分享让更多人知道
推荐阅读
Schedule + Pyecharts | 时间序列图(动态轮播图)
Pandas+Pyecharts | 北京某平台二手房数据分析+可视化
Pandas+Pyecharts | 中国大学综合排名分析+可视化
可视化 | 用Python分析近个旅游景点,告诉你假期应该去哪玩
可视化 | Python陪你过520:在你身边,你在身边
可视化 | Python制作最炫3D可视化地图
爬虫 | Python爬取豆瓣电影Top250 + 数据可视化
爬虫 | 用python构建自己的IP代理池,再也不担心IP不够用啦!
技巧 | python定时发送邮件(自动添加附件)
技巧 | 20个Pycharm最实用最高效的快捷键(动态展示)
技巧 | Python制作朋友圈炫酷九宫格图片
基础 | 彻底搞懂Python异常处理:try-except-else-finally
基础 | Python函数一文详解
【奥运会最新榜单】中国保持金牌榜首,位居第一!
【奥运会最新榜单】中国保持金牌榜首,位居第一!
东京奥运会进入第10天。截至美东时间当天中午12点,美国以22金、25银、17铜共64枚奖牌的成绩,居总奖牌榜榜首;中国以29金、17银、16铜,居金牌榜首位。
【 东京奥运会金牌排行榜】
(数据来源:加拿大奥运官网)
2020年东京奥运会奖牌榜前五预测是哪些国家
中美俄日德
iMBox聚焦2020东京奥运会 今日奖牌榜:中国总数第二
数据来源 央视网
凝聚中国结,齐聚中国心,蓄足中国力,奋发中国魂,上下中国人,不忘中国史,摇动中华旗帜,再续中华篇章。东京奥运会,iMBox愿中华健儿奋勇拼搏,再展中国雄风。
iMBox诚邀所有中华奥运健儿来iMBox项目地旅游、度假、游玩,一应费用全免。
中国,加油!
*部分图片来源于网络