matplotlib制作雷达图报错ValueError的实现
作者:CocoCream 发布时间:2022-03-06 07:15:38
标签:matplotlib,雷达图
在教材实例编写雷达图时出现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进行封闭的语句注释掉,但这样就会导致雷达图不完整,缺少一条连线:
而只需对labels同样进行封闭即可:
data = np.concatenate((data,[data[0]]))
angles = np.concatenate((angles,[angles[0]]))
labels=np.concatenate((labels,[labels[0]])) #对labels进行封闭
最终运行结果
来源:https://blog.csdn.net/CocoCream/article/details/111085769
0
投稿
猜你喜欢
- 一. 分析需求1. 需求说明在项目开发过程中,我们有时会频繁的更新代码, 流程大概为:(1) 本地git push提交代码至git托管平台(
- python在不同层级目录import模块的方法使用python进行程序编写时,经常会调用不同目录下的模块及函数。本篇博客针对常见的模块调用
- 目录精确调整工作表的行高和列宽批量更改多个工作簿的数据格式批量更改工作簿的外观格式设置字体格式修改字体为宋体修改字号字体加粗字体颜色单元格填
- 基于Python实现对求解最长回文子串的动态规划算法,具体内容如下1、题目给定一个字符串 s,找到 s 中最长的回文子串。你可以假设 s 的
- 这篇文章所说的视觉元素是指:在一个网站中除去内容(文本、图片、视频、音频等)之外的一些元素。比如图标,背景色,以及背景图案。视觉元素的设计是
- 先问一个问题, 在firefox 2里,正则表达式字符"\d"全等于"[0-9]"吗?有可能你会答&
- MySQL Innodb 引擎优化,InnoDB给MySQL提供了具有提交,回滚和崩溃恢复能力的事务安全(ACID兼容)存储引擎。InnoD
- 一、参数和共享引用:In [56]: def changer(a,b): ....: a=2 ....
- 一、环境由于这学期开了图像处理这门课,所以想着在各种实验开始之前自己先动手试一下图像处理那首先要配个环境嘛,配环境真的是我长久以来的噩梦了,
- ndarray的转置(transpose)对于A是由np.ndarray表示的情况:可以直接使用命令A.T。也可以使用命令A.transpo
- 一、前言我们在使用pycharm写代码时可能出现过下面这种情况,不小心点到了ignore ....:这样会导致整个代码都没有错误提示了,类似
- 这篇文章主要介绍了JavaScript监听触摸事件代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要
- Django中的Models 是什么?通常一个Model对应数据库的一张数据表, Django中Models以类似的形式表现, 它包含了一些
- 前言本文提供Python上传minio以及阿里oss文件工具,给自己留个记录。环境依赖安装minio以及oss2依赖pip install
- find()方法判断字符串str,如果起始索引beg和结束end索引能找到在字符串或字符串的一个子串中。语法以下是find()方
- 如下所示:#先下载psutil库:pip install psutilimport psutilimport os,datetime,tim
- 本文实例讲述了python使用装饰器和线程限制函数执行时间的方法。分享给大家供大家参考。具体分析如下:很多时候函数内部包含了一些不可预知的事
- 0、干货先写在前1、前端传值的数据必须使用JSON.stringify()传化2、后端,通过request.body接收数据,直接使用jso
- 前言今天给大家分享一些Python的基础知识,想要盖好大房子,不把地基打扎实打牢怎么行呢?所以,今天咱们就来学习基础知识,这样后期学习Pyt
- 导语每次回家小编的身边都会聚集着一堆小朋友,这就是家住一个村的好处。一回家就接收到七大姑八大姨的亲切的问候,关系那是特别不错的,小朋友也不怕