Pyecharts“可视化大屏“,带你重温 “2020东京奥运会“,不看直播尽知其事!(二)

简介: Pyecharts“可视化大屏“,带你重温 “2020东京奥运会“,不看直播尽知其事!(二)

是不是此时感觉结构更清楚了?


df2 = pd.DataFrame()
for info in data2['body']['medalTableDetail']:
    english_name = info['countryName']
    name_id = info['countryId']
    award_time = info['awardTime']
    item_name = info['bigItemName']
    sports_name = info['sportsName']
    medal_type = info['medalType']
    # 组织数据
    orangized_data = [[english_name,name_id,award_time,item_name,sports_name,medal_type]]
    # 然后追加df
    df2 = df2.append(orangized_data)
df2.columns = ['英文缩写', 'ID', '获奖时间', '项目名', '运动员', '金牌类型']
df2


结果如下:

image.png


3、数据预处理

对于爬取到的数据,往往是有问题的,我们需要提前预处理一下,方便后续做可视化展示。


① 数据替换

对于上述爬取到的数据,我们做一个数据筛选。


df1 = pd.read_excel("各国奖牌数.xlsx")
df1[df1["名称"].str.contains("中国")]


结果如下:

image.png

虽说中国香港、中国台湾都单独参加了奥运会,但她们都属于中国,我们将她们的都改为中国,ID也都改为26。


df1["名称"].replace(["中国台北","中国香港"],"中国",inplace=True)
df1["ID"].replace([31,38],26,inplace=True)
df1[df1["名称"].str.contains("中国")]


结果如下:

image.png


② 数据分组

经过上述处理,那么中国就相当于有3条数据了。我们以名称+ID作为联合字段,进行分组,然后求和,将这3条数据进行合并。最后,再以金牌字段为基准,进行降序排列。


df2 = df1.groupby(["名称","ID"])[["金牌","银牌","铜牌","奖牌总数"]].sum().reset_index().sort_values(by="金牌",axis=0,ascending=False)
df2.head(10)


结果如下:

image.png


③ 中英文名映射转换

由于使用pyecharts绘制世界地图时,名称必须是英文的,所以我们需要将这里的中文名称映射为英文名称。于是我在网上找到了下面这个文件:

image.png

我们要做的就是将它与表格中的数据,做个映射转换。先把它转换为一个Excel文件吧,方便我们以后直接使用。


with open("国家名中英文对照表.txt","r",encoding="utf-8") as f:
    x = f.read()
df3 = pd.DataFrame()
for i in x.split("\n"):
    x = i.split(":")[0].strip()
    y = i.split(":")[1].strip()
    orangined_data = [[x,y]]
    df3 = df3.append(orangined_data)
df3.columns = ["名称","英文名称"]
df3.to_excel("国家名中英文对照表.xlsx",index=None)


然后,在和上述的df2表格做一个左连接即可。


df4 = pd.merge(df2,df3,on="名称",how="left")
df4


结果如下:

image.png

相关文章
|
3月前
|
存储 数据可视化 数据挖掘
揭秘!Matplotlib与Seaborn联手,如何让Python数据分析结果一目了然,惊艳全场?
在数据驱动时代,高效直观地展示分析结果至关重要。Python中的Matplotlib与Seaborn是两大可视化工具,结合使用可生成美观且具洞察力的图表。本文通过分析某电商平台的商品销量数据集,展示了如何利用这两个库揭示商品类别与月份间的销售关系及价格对销量的影响。首先使用Matplotlib绘制月份销量分布直方图,再借助Seaborn的箱线图进一步探索不同类别和价格区间下的销量稳定性。
66 10
|
4月前
|
数据可视化 前端开发
大厂都在用的可视化大屏,你拿下了吗?
大厂都在用的可视化大屏,你拿下了吗?
|
7月前
|
监控 数据可视化 数据挖掘
数据可视化第二版-拓展-和鲸网约车分析一等奖作品
数据可视化第二版-拓展-和鲸网约车分析一等奖作品
|
7月前
|
容器
羊了个羊游戏开发实战教程(4):道具的实现
羊了个羊游戏开发实战教程(4):道具的实现
98 0
|
7月前
|
开发者
羊了个羊游戏开发实战教程(6):快速拾取
羊了个羊游戏开发实战教程(6):快速拾取
50 0
|
数据可视化 JavaScript 定位技术
漏刻有时数据可视化Echarts组件开发(27):端午地图粽情之你的家乡吃甜还是吃咸?
漏刻有时数据可视化Echarts组件开发(27):端午地图粽情之你的家乡吃甜还是吃咸?
129 0
漏刻有时数据可视化Echarts组件开发(27):端午地图粽情之你的家乡吃甜还是吃咸?
|
移动开发 JavaScript Java
游戏转播平台源码分享(类虎牙斗鱼系统源码)
数字化时代,娱乐游戏产业蓬勃发展,游戏转播平台成为了各类游戏爱好者分享游戏乐趣的热门选择。为满足市场需求,东莞梦幻网络科技开发了一款全功能的游戏转播平台源码,该源码可供开发者搭建类似于虎牙斗鱼平台的系统。具备APP安卓端、APP苹果端、H5网页端和PC端的游戏转播平台,提供游戏转播、视频模块、社区论坛、新闻话题等多样化功能。采用了PHP、Java、Vue和Objective-C 编程语言开发。
|
数据可视化 搜索推荐
【数据可视化】预制菜行业分析(一)——国内发展情况
近年来,预制菜开始从大型连锁餐饮企业的中央厨房渗透到外卖餐饮平台,并逐渐从 B 端走向 C 端。消费者购买后只需要简单加工即可食用,省去了食材采购、处理步骤,具有便捷、高效、口味保持度高的特点。
|
域名解析 前端开发 安全
世界杯NBA欧冠体育赛事比分直播竞猜平台搭建解决方案(源码部署详细流程)
随着体育直播技术的发展,越来越多的人开始通过网络观看比赛和参与竞猜。搭建一款体育赛事比分直播竞猜平台成为了很多人关注的话题。
|
7月前
|
数据可视化
大咖与小白的日常:那些炫酷的指挥中心大屏是怎么做的?
小白的老板想要电影里那样炫酷的指挥中心大屏来呈现业务数据,该怎么做呢?