说明

搞了一个最新版本的雷达图,比以前那个美观。

不多说,代码奉上:

完整代码

'''
matplotlib雷达图
'''
import numpy as np
import matplotlib.pyplot as plt # 雷达图
def plot_radar(labels, data, score):
'''
用法:
>>> labels = np.array(['艺术A','调研I','实际R','常规C','企业E','社会S']) #标签
>>> data = np.array([1,4,3,6,4,8]) # 数据
>>> score = 10 # 表明数据是“十分制”。其可选的选项有1分制、5分制、10分制、100分制 >>> plot_radar(labels, data, score) # 画雷达图
'''
n = len(labels) # 转化为十分制!!!
if score in [5, 10, 100]:
data = data * 10/score
elif score == 1:
data = data * 10 angles = np.linspace(0 + np.pi/2, 2*np.pi + np.pi/2, n, endpoint=False) # 旋转90度,从正上方开始! data = np.concatenate((data, [data[0]])) # 闭合
angles = np.concatenate((angles, [angles[0]])) # 闭合 fig = plt.figure()
ax = fig.add_subplot(111, polar=True)# 参数polar,表示极坐标!! # 自己画grid线(5条环形线)
for i in [2,4,6,8,10]:
ax.plot(angles, [i]*(n+1), 'b-',lw=0.5) # 之所以 n +1,是因为要闭合! # 填充底色
ax.fill(angles, [10]*(n+1), facecolor='g', alpha=0.5) # 自己画grid线(6条半径线)
for i in range(n):
ax.plot([angles[i], angles[i]], [0, 10], 'b-',lw=0.5) # 画线
ax.plot(angles, data, 'bo-', linewidth=2) # 填充
#ax.fill(angles, data, facecolor='r', alpha=0.25)
ax.fill(angles, data, facecolor='r') ax.set_thetagrids(angles * 180/np.pi, labels, fontproperties="SimHei")
ax.set_title("matplotlib雷达图", va='bottom', fontproperties="SimHei")
ax.set_rlim(0,10) # 下两行去掉所有默认的grid线
ax.spines['polar'].set_visible(False) # 去掉最外围的黑圈
ax.grid(False) # 去掉中间的黑圈 # 关闭数值刻度
ax.set_yticks([]) plt.show() # 测试
if __name__ == '__main__': labels = np.array(['艺术A','调研I','实际R','常规C','企业E','社会S']) #标签 data = np.array([1,4,3,6,4,8]) # 数据 score = 10 # 表明数据是“十分制”。其可选的选项有1分制、5分制、10分制、100分制 # 画雷达图
plot_radar(labels, data, score)

效果图

matplotlib 雷达图2的更多相关文章

  1. matplotlib雷达图

    用matplotlib画雷达图,网上流传的版本其实都是官网的一个例子.但是那个例子太复杂,而且它封装了几个类,让人难以一眼看出其本质. 我给出一个简单的解决方法,没有任何封装.作本文的原因,是为了回答 ...

  2. Matplotlib学习---用matplotlib画雷达图(radar chart)

    雷达图常用于对多项指标的全面分析.例如:HR想要比较两个应聘者的综合素质,用雷达图分别画出来,就可以进行直观的比较. 用Matplotlib画雷达图需要使用极坐标体系,可点击此链接,查看对极坐标体系的 ...

  3. python+matplotlib制作雷达图3例分析和pandas读取csv操作

    1.例一 图1 代码1 #第1步:导出模块 import numpy as np import matplotlib.pyplot as plt from matplotlib import font ...

  4. 数据可视化基础专题(十二):Matplotlib 基础(四)常用图表(二)气泡图、堆叠图、雷达图、饼图、

    1 气泡图 气泡图和上面的散点图非常类似,只是点的大小不一样,而且是通过参数 s 来进行控制的,多的不说,还是看个示例: 例子一: import matplotlib.pyplot as plt im ...

  5. matplotlib常见图表绘制——极坐标图-雷达图、极轴图

    前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 作者:斑点鱼 极坐标轴 调用subplot()创建子图时通过设置proje ...

  6. python批量制作雷达图

    老板要画雷达图,但是数据好多组怎么办?不能一个一个点excel去画吧,那么可以利用python进行批量制作,得到样式如下: 首先制作一个演示的excel,评分为excel随机数生成: 1 =INT(( ...

  7. Python成绩雷达图

    代码 import numpy as np import matplotlib import matplotlib.pyplot as plt matplotlib.rcParams['font.fa ...

  8. Python成绩单雷达图

    1numpy库 numpy 是 python 的科学计算库 部分功能: 1.使用numpy读取txt文件 # dtype = "str":指定数据格式 # delimiter = ...

  9. Python简单雷达图绘制

    import numpy as npimport matplotlib.pyplot as pltimport matplotlibmatplotlib.rcParams['font.family'] ...

随机推荐

  1. innodb索引统计信息

    以下分析基于mysql5.6.10 统计信息相关字典表 information_schema.statistics mysql.innodb_table_stats mysql.innodb_inde ...

  2. 如何让VB6代码编辑器垂直滚动条随鼠标滚轮滚动

    VB6毕竟是很老的产品了,它的代码编辑器垂直滚动条并不能随鼠标的滚轮而滚动,这个问题会让我们在编写代码的时候觉得很不方便,不过还是有一种方法可以解决这个问题的.    先下载一个微软发布的“VB6ID ...

  3. Linux开启和关闭防火墙

    一.即时生效,重启后失效: 1.启动:service iptables start 2.关闭:service iptables stop 二.重启后永久生效: 1.启动:chkconfig iptab ...

  4. 表迁移工具的选型-复制ibd的方法-传输表空间

    1.1. 场景 有的时候开放人员自己的库需要帮忙导一些数据,但是表的数据量又很大.虽然说使用mysqldump或mysqlpump也可以导.但是这耗时需要比较久. 记得之前建议开放人员可以直接使用na ...

  5. Linux 进程管理之四大名捕

    本文来自网络,著作权归原创作者所有,不做任何商业用途. 一.四大名捕 四大名捕,最初出现于温瑞安创作的武侠小说,是朝廷中正义力量诸葛小花的四大徒弟,四人各怀绝技,分别是轻功暗器高手“无情”.内功卓越的 ...

  6. Android 增加JNI

    Android:JNI 与 NDK到底是什么?(含实例教学) 前言 在android开发中,使用NDK开发的需求正逐渐增大: 很多人搞不懂JNI与NDK到底是怎么回事? 今天我们先介绍JNI与NDK之 ...

  7. Google搜索引擎

    一.基本搜索 逻辑符 与(空格).或(OR).非(-). ""全匹配搜索 加入双引号表示完全匹配搜索 *通配符 二.高级搜索 intitle:只搜索网页标题(即html的title ...

  8. PXE 和 计算机网络启动

    1. 什么是PXE PXE(Pre-boot Execution Environment,预启动执行环境)是由Intel公司开发的最新技术,工作于Client/Server的网络模式,支持工作站通过网 ...

  9. 很不错的关于依赖注入和AOP的系列文章

    http://blog.csdn.net/tittop/article/details/6716033

  10. [转]OpenGL进阶(一) - 多视口

    直接给出原文链接:OpenGL进阶(一) - 多视口