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 socket 超时设置 errno 10054
Jul 01 Python
Python ValueError: invalid literal for int() with base 10 实用解决方法
Jun 21 Python
使用Python来开发Markdown脚本扩展的实例分享
Mar 04 Python
Python操作Excel之xlsx文件
Mar 24 Python
Python3实现发送QQ邮件功能(html)
Dec 15 Python
python机器学习案例教程——K最近邻算法的实现
Dec 28 Python
从DataFrame中提取出Series或DataFrame对象的方法
Nov 10 Python
python3爬虫学习之数据存储txt的案例详解
Apr 24 Python
python中使用while循环的实例
Aug 05 Python
django框架中ajax的使用及避开CSRF 验证的方式详解
Dec 11 Python
python对文件的操作方法汇总
Feb 28 Python
OpenCV 图像梯度的实现方法
Jul 25 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可能遇到的问题“无法载入mysql扩展” 的解决方法
2007/04/16 PHP
PHP var_dump遍历对象属性的函数与应用代码
2010/06/04 PHP
PHP自动生成后台导航网址的最佳方法
2013/08/27 PHP
实例讲解PHP面向对象之多态
2014/08/20 PHP
Yii基于CActiveForm的Ajax数据验证用法示例
2016/07/14 PHP
PHP chr()函数讲解
2019/02/11 PHP
PHP convert_uudecode()函数讲解
2019/02/14 PHP
浅谈Javascript事件处理程序的几种方式
2012/06/27 Javascript
关于使用 jBox 对话框的提交不能弹出问题解决方法
2012/11/07 Javascript
单击复制文字兼容各浏览器的完美解决方案
2013/07/04 Javascript
Jquery实现简单的轮播效果(代码管用)
2016/03/14 Javascript
走进AngularJs之过滤器(filter)详解
2017/02/17 Javascript
canvas绘图不清晰的解决方案
2017/02/28 Javascript
angular+bootstrap的双向数据绑定实例
2017/03/03 Javascript
基于Datatables跳转到指定页的简单实例
2017/11/09 Javascript
Vue组件中slot的用法
2018/01/30 Javascript
select标签设置默认选中的选项方法
2018/03/02 Javascript
ES6使用export和import实现模块化的方法
2018/09/10 Javascript
Vue实现按钮级权限方案
2019/11/21 Javascript
python将字符串转换成数组的方法
2015/04/29 Python
Python中字典(dict)合并的四种方法总结
2017/08/10 Python
pandas dataframe添加表格框线输出的方法
2019/02/08 Python
python openpyxl使用方法详解
2019/07/18 Python
python写程序统计词频的方法
2019/07/29 Python
使用Keras实现简单线性回归模型操作
2020/06/12 Python
HTML5中indexedDB 数据库的使用实例
2017/05/11 HTML / CSS
英国护肤品购物网站:Beauty Expert
2016/08/19 全球购物
Perfume’s Club英国官网:购买香水和护肤品
2019/11/02 全球购物
研究生自我鉴定范文
2013/10/30 职场文书
学生鉴定评语大全
2014/05/05 职场文书
考生诚信考试承诺书
2014/05/23 职场文书
会计专业自荐信范文
2015/03/05 职场文书
MongoDB balancer的使用详解
2021/04/30 MongoDB
Java用自带的Image IO给图片添加水印
2021/06/15 Java/Android
vue项目打包后路由错误的解决方法
2022/04/13 Vue.js
Python 文字识别
2022/05/11 Python