怎么用Python画王者荣耀英雄能力雷达图
发表于:2025-12-02 作者:千家信息网编辑
千家信息网最后更新 2025年12月02日,这篇文章主要讲解了"怎么用Python画王者荣耀英雄能力雷达图",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"怎么用Python画王者荣耀英雄能力雷达图
千家信息网最后更新 2025年12月02日怎么用Python画王者荣耀英雄能力雷达图
这篇文章主要讲解了"怎么用Python画王者荣耀英雄能力雷达图",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"怎么用Python画王者荣耀英雄能力雷达图"吧!
现有以下表格,我需要画成第二张图中的雷达图(类似fifa足球、王者荣耀里面的那种球员能力图)
雷达图函数用到以下包:
import math
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.colors as mcolors
导入中文相关字体
# 导入中文
import matplotlib.font_manager as font_manager
font_dirs = ['./font']
font_files = font_manager.findSystemFonts(fontpaths=font_dirs)
font_list = font_manager.createFontList(font_files)
font_manager.fontManager.ttflist.extend(font_list)
plt.rcParams['font.family'] = 'SimHei'
# 启用主题
plt.style.use('ggplot')
获取极径范围
# 获取极径范围
def get_range(data_list):
max = min = 0
for _, data in data_list.items():
for v in data:
if v < min:
min = v
if v > max:
max = v
return [min, max]
生成能力分布图
# 生成能力分布图
def generate_ability_map(abilities, data_list, rows=3):
min, max = get_range(data_list)
# 根据能力项等分圆
angles = np.linspace(0, 2 * np.pi, len(abilities), endpoint=False)
angles = np.append(angles, angles[0])
# 生成n个子图
fg, axes = plt.subplots(math.ceil(len(data_list) / rows), rows, subplot_kw=dict(polar=True),figsize=(9,9))
# 调整子图间距
plt.subplots_adjust(wspace =0.6, hspace =0.6)
# 打散为一维数组
axes = axes.ravel()
# 获取所有支持的颜色
colors = list(mcolors.TABLEAU_COLORS)
# 循环绘制
i = 0
for name, data in data_list.items():
data = np.append(np.array(data), data[0])
ax = axes[i]
# 绘制线条
ax.plot(angles, data, color=colors[i])
# 填充颜色
ax.fill(angles, data, alpha=0.7, color=colors[i])
# 设置角度
ax.set_xticks(angles)
# 设置坐标轴名称
ax.set_xticklabels(abilities)
# 设置名称
ax.set_title(name, size=10, color='black', position=(0.5, 0.4))
# 设置极径最小值
ax.set_rmin(min)
# 设置极径最大值(最大值加0.1,要不线条最外圈线显示不完全)
ax.set_rmax(max + 0.1)
i = i + 1
plt.show()
调用:
#数据
abilities = ['灵活性', '功能性', '平稳性', '安全性', '耐用性', '经济性']
super_heros = {
'固定点降落': [2,1,5,5,4,3],
'任意点降落': [5,5,2,3,3,4],
'局部最优点降落': [4,5,4,4,3,4],
}
#画图
generate_ability_map(abilities, super_heros)
程序运行后,得到文中开始的图:
感谢各位的阅读,以上就是"怎么用Python画王者荣耀英雄能力雷达图"的内容了,经过本文的学习后,相信大家对怎么用Python画王者荣耀英雄能力雷达图这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是,小编将为大家推送更多相关知识点的文章,欢迎关注!
能力
雷达
王者
荣耀
英雄
学习
生成
最大
内容
分布图
名称
最大值
线条
范围
颜色
中文
平稳
最小
耐用
个子
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
大学生容易受骗的网络安全
无线网络技术期末论文
合肥市网络安全产业
计算机网络技术及应用第2版
网络技术兼职网站
三级网络技术选择题题库
中国互联网十大科技创新品牌
上海果篮互联网科技有限
众包软件开发规划
网络技术大赛理论题题库
北京前端软件开发价格
网络安全话题
上海质量软件开发推广
网络技术及宽带要求
数据库一直开着有事吗
深圳扫码点餐软件开发
武装突袭服务器无法被搜到
专业技术人员网络安全试卷1
重庆七划互联网科技有限公司
建筑材料数据库设计
浙江加工刀片服务器设计
论坛的数据库结构简述
网络安全法对个人信息保护要点
手机搭建的服务器软件
网络服务器怎么连接dns
为什么打开苏康码总是服务器出错
服务器风扇启动慢
xSS喋血复仇无法连接服务器
导出文献服务器发生内部错误
飞行家服务器超时怎么办