【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_managerfont_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 = 0for _, data in data_list.items():for v in data:if v < min:min = vif v > max:max = vreturn [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 = 0for 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 + 1plt.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)
程序运行后,得到文中开始的图:
往期精彩回顾适合初学者入门人工智能的路线及资料下载机器学习及深度学习笔记等资料打印机器学习在线手册深度学习笔记专辑《统计学习方法》的代码复现专辑
AI基础下载机器学习的数学基础专辑获取一折本站知识星球优惠券,复制链接直接打开:https://t.zsxq.com/662nyZF本站qq群704220115。加入微信群请扫码进群(如果是博士或者准备读博士请说明):
【Python基础】Python画王者荣耀英雄能力雷达图相关推荐
- Python画王者荣耀英雄能力雷达图
现有以下表格,我需要画成第二张图中的雷达图(类似fifa足球.王者荣耀里面的那种球员能力图) 雷达图函数用到以下包: import math import numpy as np import mat ...
- Python画王者荣耀英雄能力雷达图!谁才是最强上分英雄!
现有以下表格,我需要画成第二张图中的雷达图(类似fifa足球.王者荣耀里面的那种球员能力图) 雷达图函数用到以下包: import math import numpy as np import mat ...
- Python爬虫爬取王者荣耀英雄人物高清图片
Python爬虫爬取王者荣耀英雄人物高清图片 实现效果: 网页分析 从第一个网页中,获取每个英雄头像点击后进入的新网页地址,即a标签的 href 属性值: 划线部分的网址是需要拼接的 在每个英雄的具体 ...
- Python批量爬取王者荣耀英雄高清壁纸
Python批量爬取王者荣耀英雄高清壁纸 文章目录 Python批量爬取王者荣耀英雄高清壁纸 前言 爬虫步骤 python代码实现 总结 前言 很多喜欢玩王者的朋友很希望把王者荣耀的英雄图片拿来做壁纸 ...
- Python爬虫基础--爬取王者荣耀英雄皮肤图片
文章目录 思路分析 涉及到的知识点 Json数据说明 `herolist.json`:英雄列表 皮肤图片尺寸分析 程序说明 代码 结果(数据)分析 声明 这里只是简单介绍主要内容,详见github,仓 ...
- 手把手教你使用Python网络爬虫获取王者荣耀英雄皮肤
点击上方"Python爬虫与数据挖掘",进行关注 回复"书籍"即可获赠Python从入门到进阶共10本电子书 今 日 鸡 汤 欢度国庆,共度中秋. /1 前言/ ...
- 初学Python,爬取王者荣耀英雄介绍及皮肤下载
前言 其实一开始是准备爬王者荣耀官网的,但是研究了很长时间,发现它的官网爬取后的数据说是乱码也不算,但都看不懂,也没查到解决办法,估计是反爬比较强,对于新手来说,有点困难. 所以为了练习,还是选择了难 ...
- python爬虫——爬取王者荣耀英雄出装建议(一)
爬取装备列表 #爬取王者荣耀装备,并写入MySQL数据库import requests import re import pymysqldb=pymysql.connect('localhost',' ...
- 用Python更方便了解王者荣耀英雄属性对比
导入库 import pandas as pd import matplotlib.pyplot as plt import seaborn as sns from sklearn.mixture i ...
最新文章
- p3c插件 离线安装_IntelliJ IDEA18个常用插件,动图演示,让你效率翻倍!
- 查看matlab中函数源代码的方法
- 【干货书】深度学习合成数据
- Go语言中如何进行测试
- 2017新生儿爆款名字出炉!90后的父母们最受欢迎的居然是.....
- linux 查看其他磁盘分区,Linux 查看磁盘分区.pdf
- 文件跨服务器传输_跨桌面设备传输文件的最优选?
- [设计模式-行为型]模板方法模式(Template Method)
- python-study-09
- jinyuan oracle,简述Oracle IOT(Index Organized Table)(下)
- RVCT31编译问题
- matlab 辅助函数 —— 文件下载与文件解压
- 格雷码与二进制转换电路设计
- 锐捷交换机堆叠配置举例
- Ubuntu 18.04 LTS 安装64位 iNode 客户端
- 锐捷睿易:配置SSH登录
- 回溯法 backtrack
- 使用WebServiceStudio测试WebService接口
- 3dmax:3dmax的软件两大常用工具之基本二维图形(线、圆、椭圆、弧、多边形、星形、文本、螺旋线、截面、扩展样条线)之详细攻略
- 使用 * 打印等腰三角形
热门文章
- MaxReceivedMessageSize :已超过传入消息(65536)的最大消息大小配额
- 《京东618实践:一元抢宝系统的数据库架构优化》阅读笔记
- Linux下安装MongoDB全程记录
- QAU 18校赛 J题 天平(01背包 判断能否装满)
- 冷静处理因为一时疏忽产生的错误。是提升自己的重要方法
- Spring Boot中使用AOP统一处理Web请求日志
- 现在的人工智能逆天到什么地步了?
- hdu (欧拉函数+容斥原理) GCD
- C# Winform中DataGridView的DataGridViewCheckBoxColumn CheckBox选中判断
- 浙江巨丰管业有限公司网站