Python预测卡塔尔世界杯身价最高的英格兰要夺冠?!


大家好,我是 👉 【Python当打之年(点击跳转)】

本期利用python教大家制作 2022卡塔尔世界杯32强身价排行榜图 ,希望对大家有所帮助,如有疑问或者需要改进的地方可以私信小编。

FIFA国家队排名前十:

1 - 巴西

2 - 比利时

3 - 阿根廷

4 - 法国

5 - 英格兰

6 - 意大利 (未进入正赛)

7 - 西班牙

8 - 荷兰

9 - 葡萄牙

10 - 丹麦

巴西 、 比利时 、阿根廷FIFA排名位居三甲,法国、英格兰紧随其后。

世界杯身价排名前十:

1 - 英格兰

2 - 巴西

3 - 法国

4 - 葡萄牙

5 - 西班牙

6 - 德国

7 - 阿根廷

8 - 荷兰

9 - 比利时

10 - 乌拉圭

英格兰、 巴西、法国以超过10亿欧元的身价排名前三位,葡萄牙、西班牙也以超过9亿欧元的身价排在第四、第五位。

🏳️‍🌈 1. 数据

以下面格式为例:
在这里插入图片描述

🏳️‍🌈 2. 绘图

2.1 绘制表头

ax.text(2.2, tit_pos, '排名', ha='center', va='bottom', fontsize=10, fontweight='heavy')
ax.text(7.7, tit_pos, '球队', ha='center', va='bottom', fontsize=10, fontweight='heavy')
ax.text(12.5, tit_pos, '身价(亿欧)', ha='center', va='bottom', fontsize=10, fontweight='heavy')
ax.text(27, tit_pos, 'FIFA国家队排名', ha='center', va='bottom', fontsize=9, fontweight='heavy')

2.2 绘制排名、球队以及国旗

for a, b in zip(y, x):
    print(a,b)
    path = f'./pic/{names[k]}.gif'
    arr_img = mpimg.imread(path)
    imagebox = OffsetImage(arr_img, zoom=0.26)
    ab = AnnotationBbox(imagebox, [5, b], pad=0.02, frameon=False)
    ax.add_artist(ab) 
    ax.text(a+12, b - 0.35, '%.2f' % a, ha='center', va='bottom', fontsize=9)
    ax.text(27, b - 0.22, z[k], ha='center', va='bottom', fontsize=10, fontweight='heavy')
    ax.text(2, b - 0.22, x[::-1][k], ha='left', va='bottom', fontsize=10)
    ax.text(7, b - 0.22, names[k], ha='left', va='bottom', fontsize=10)

2.3 绘制身价柱状图

names = df['球队'].values.tolist()
x = df['排名'].values.tolist()[::-1]
y = df['身价(亿欧)'].values.tolist()
z = df['FIFA国家队排名'].values.tolist()
norm_values = norm(y)
map_vir = cm.get_cmap(name='Spectral')
colors = map_vir(norm_values)
labels = df['球队'].values.tolist()
ax.barh(x, y, left=11,tick_label=labels, height=0.5, color=colors[::-1])

2.4 绘制FIFA排名散点图

asc = sorted(z)
dd = [asc.index(i) for i in z]
ax.scatter([27]*32, x, s=[asc[31-i]*10 for i in dd], color=colors[::-1],alpha=0.4)

2.5 设置背景

ax.imshow(img,extent=[5, 25, 5, 30],alpha=0.2)

2.6 设置标题

ax.text(6.6, 37, '世界杯三十二强身价排行榜', fontdict={'color': '#880E4F', 'size': 20}, fontweight='heavy')
ax.text(10, 36, '(制图@公众号:Python当打之年)', fontsize = 9, fontweight='heavy',alpha=1, color = '#5D4037')
ax.text(6.6, 35, '*注:FIFA国家队排名前10中仅意大利(排名第6)未进入32强', fontsize = 9, fontweight='heavy',alpha=.9, color = '#662400')

完成效果如下图:
在这里插入图片描述

身价最高的一定最强吗?英格兰要夺冠啦?小伙伴们怎么看…

🏳️‍🌈 3. 更多可视化项目源码+数据:

网盘: https://pan.baidu.com/doc/share/Olj4d~aKuXT7AF0cq01MrQ-437060019167360
提取码: pyra


以上就是本期为大家整理的全部内容了,赶快练习起来吧,原创不易,喜欢的朋友可以点赞、收藏也可以分享注明出处)让更多人知道。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Python当打之年

您的鼓励是我创作的最大动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值