matplotlib制作雷达图报错ValueError的实现


Posted in Python onJanuary 05, 2021

在教材实例编写雷达图时出现ValueError,具体如下:

ValueError: The number of FixedLocator locations (7), usually from a call to set_ticks, does not match the number of ticklabels (6).

而原代码如下:

import numpy as np
import matplotlib.pyplot as plt
import matplotlib
matplotlib.rcParams['font.family']='SimHei'
matplotlib.rcParams['font.sans-serif'] = ['SimHei']
labels = np.array(['综合','KDA','发育','推进','生存','输出'])
nAttr = 6
data = np.array([7,5,6,9,8,7])
angles = np.linspace(0,2*np.pi,nAttr,endpoint=False)
data = np.concatenate((data,[data[0]]))
angles = np.concatenate((angles,[angles[0]]))
fig = plt.figure(facecolor="white")
plt.subplot(111,polar=True)
plt.plot(angles,data,'bo-',color ='g',linewidth=2)
plt.fill(angles,data,facecolor='g',alpha=0.25)
plt.thetagrids(angles*180/np.pi,labels)
plt.figtext(0.52,0.95,'DOTA能力值雷达图',ha='center')
plt.grid(True)
plt.show()

原因在于对array类型data、angles进行封闭时,未对labels进行相同操作,导致labels内元素个数与前两者不相同,从而出现ValueError。

之前在网上寻找解决方案,发现大多数答主选着将对data、angles进行封闭的语句注释掉,但这样就会导致雷达图不完整,缺少一条连线:

matplotlib制作雷达图报错ValueError的实现

而只需对labels同样进行封闭即可:

data = np.concatenate((data,[data[0]]))
angles = np.concatenate((angles,[angles[0]]))
labels=np.concatenate((labels,[labels[0]]))  #对labels进行封闭

最终运行结果

matplotlib制作雷达图报错ValueError的实现

到此这篇关于matplotlib制作雷达图报错ValueError的实现的文章就介绍到这了,更多相关matplotlib 雷达图报错 内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python解析文件示例
Jan 23 Python
python列表操作实例
Jan 14 Python
python使用PIL模块实现给图片打水印的方法
May 22 Python
Python爬取当当、京东、亚马逊图书信息代码实例
Dec 09 Python
解决python3 网络请求路径包含中文的问题
May 10 Python
Python面向对象程序设计示例小结
Jan 30 Python
python pprint模块中print()和pprint()两者的区别
Feb 10 Python
Python绘制动态水球图过程详解
Jun 03 Python
详解Python 函数参数的拆解
Sep 02 Python
Python性能测试工具Locust安装及使用
Dec 01 Python
Python 实现劳拉游戏的实例代码(四连环、重力四子棋)
Mar 03 Python
python基础之文件操作
Oct 24 Python
python实现三种随机请求头方式
Jan 05 #Python
scrapy实践之翻页爬取的实现
Jan 05 #Python
python里glob模块知识点总结
Jan 05 #Python
python用opencv 图像傅里叶变换
Jan 04 #Python
python基于opencv 实现图像时钟
Jan 04 #Python
python基于opencv实现人脸识别
Jan 04 #Python
利用python绘制正态分布曲线
Jan 04 #Python
You might like
php循环输出数据库内容的代码
2008/05/24 PHP
GBK的页面输出JSON格式的php函数
2010/02/16 PHP
批量修改RAR文件注释的php代码
2010/11/20 PHP
PHP实现的多彩标签效果代码分享
2014/08/21 PHP
PHP基于SPL实现的迭代器模式示例
2018/04/22 PHP
jQuery 常见开发使用技巧总结
2009/12/26 Javascript
Tinymce+jQuery.Validation使用产生的BUG
2010/03/29 Javascript
js 时间函数应用加、减、比较、格式转换的示例代码
2013/08/23 Javascript
给应用部分的js代码设定一个统一的入口
2014/06/15 Javascript
在Ubuntu上安装最新版本的Node.js
2014/07/14 Javascript
浅析Javascript匿名函数与自执行函数
2016/02/06 Javascript
jQuery toggle 代替方法
2016/03/22 Javascript
详解axios在node.js中的post使用
2017/04/27 Javascript
详解ES6 CLASS在微信小程序中的应用实例
2020/04/24 Javascript
python 多进程通信模块的简单实现
2014/02/20 Python
Python中使用item()方法遍历字典的例子
2014/08/26 Python
简洁的十分钟Python入门教程
2015/04/03 Python
详解python3中zipfile模块用法
2018/06/18 Python
python模糊图片过滤的方法
2018/12/14 Python
python实现矩阵打印
2019/03/02 Python
ipad上运行python的方法步骤
2019/10/12 Python
Python 实现一个计时器
2020/07/28 Python
详解tf.device()指定tensorflow运行的GPU或CPU设备实现
2021/02/20 Python
CSS3 优势以及网页设计师如何使用CSS3技术
2009/07/29 HTML / CSS
指针和引用有什么区别
2013/01/13 面试题
SQL注入攻击的种类有哪些
2013/12/30 面试题
期中考试反思800字
2014/05/01 职场文书
大学同学会活动方案
2014/08/20 职场文书
全陪导游词
2015/02/04 职场文书
地道战观后感
2015/06/04 职场文书
感恩教育观后感
2015/06/17 职场文书
2016春节放假通知范文
2015/08/18 职场文书
2016年大学生党员公开承诺书
2016/03/24 职场文书
PL350与SW11的比较
2021/04/22 无线电
为Java项目添加Redis缓存的方法
2021/05/18 Redis
python之django路由和视图案例教程
2021/07/26 Python