PYTHON绘制雷达图代码实例


Posted in Python onOctober 15, 2019

这篇文章主要介绍了PYTHON绘制雷达图代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

1、雷达图

import matplotlib.pyplot as plt
import numpy as np

values = [0.09,-0.05,0.20,-0.02,0.08,0.09,0.03,0.027]
x = np.linspace(0,2*np.pi,9)[:-1]
c = np.random.random(size=(8,3))
fig = plt.figure()
plt.axes(polar=True)
#获取当前的axes
print(plt.gca())
#绘图
plt.bar(x,values,width=0.5,color=c,align='center')
plt.scatter(x,values,marker='o',c='black')
#添加文本
plt.figtext(0.03,0.7,s='陆地面积增长指数',fontproperties='KaiTi',fontsize=22,rotation='vertical',verticalalignment='center',horizontalalignment='center')

plt.ylim(-0.05, 0.25)

labels = np.array(['省1','省2','省3','省4','省5','省6','省7','研究区'])
dataLength = 8
angles = np.linspace(0, 2*np.pi, dataLength, endpoint=False)
plt.thetagrids(angles * 180/np.pi, labels,fontproperties='KaiTi',fontsize=18)

#添加注释
# plt.annotate(s='省',xy=(0,0.09),xytext=(0,0.28),fontproperties='KaiTi',fontsize=18)
# plt.annotate(s='省',xy=(0,-0.05),xytext=(np.pi/4,0.28),fontproperties='KaiTi',fontsize=18)
# plt.annotate(s='省',xy=(0,0.20),xytext=(np.pi/2,0.28),fontproperties='KaiTi',fontsize=18)
# plt.annotate(s='省',xy=(0,-0.02),xytext=(3*np.pi/4,0.33),fontproperties='KaiTi',fontsize=18)
# plt.annotate(s='省',xy=(0,0.08),xytext=(np.pi,0.38),fontproperties='KaiTi',fontsize=18)
# plt.annotate(s='省',xy=(0,0.09),xytext=(np.pi*5/4,0.35),fontproperties='KaiTi',fontsize=18)
# plt.annotate(s='前江省',xy=(0,0.03),xytext=(np.pi*3/2,0.30),fontproperties='KaiTi',fontsize=18)
# plt.annotate(s='研究区',xy=(0,0.027),xytext=(np.pi*7/4,0.28),fontproperties='KaiTi',fontsize=18)
#设置网格线样式
plt.grid(c='gray',linestyle='--',)


# y1 = [-0.05,0.0,0.05,0.10,0.15,0.20,0.25]
# lai=fig.add_axes([0.12,0.01,0.8,0.98])
# lai.patch.set_alpha(0.25)
# lai.set_ylim(-0.05, 0.25)
#显示
plt.show()

结果:

PYTHON绘制雷达图代码实例

2、实例2

import matplotlib.pyplot as plt
import numpy as np

plt.rcParams['font.sans-serif'] = ['SimHei'] # 图例中文问题
plt.rcParams['axes.unicode_minus'] = False  #正负号问题


x= np.array(['1省','2省','3省','4省','5省','6省','7省','研究区'])
y1 = np.array([5.5, 7.2, 17.3, 15.0, 10.8, 21.8, 3.4, 81.4])
y2 = [0, -27.5, -3.9, -18.0, -0.2, -1.4, -1.7, -52.1]
y3 = [5.5, -20.2, 13.4, -2.9, 10.6, 20.4, 1.7, 28.5]


loc=[0.12,0.15,0.65,0.6]
plt.axes(loc)

plt.bar(x,y1,0.4,label=u'退')
plt.bar(x,y2,0.4,label=u'进')
plt.plot(x,y3,marker='o',markersize='6',c='black')

y=np.array([-50, 0 ,50])
plt.xticks(x,fontproperties='KaiTi',fontsize=8)
plt.yticks(y)
plt.grid(c='gray',linestyle='--',alpha=0.25)

plt.figtext(0.02,0.45,s='变化(km2)',fontproperties='KaiTi',fontsize=14,rotation='vertical',verticalalignment='center',horizontalalignment='center')


#frameon=False 去掉图例边框
plt.legend(loc='center', bbox_to_anchor=(1.2, 0.5),ncol=1,
      frameon=False)

plt.show()

结果:

PYTHON绘制雷达图代码实例

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python实现计算文件夹下.h和.cpp文件的总行数
Apr 23 Python
Python解决N阶台阶走法问题的方法分析
Dec 28 Python
在python中以相同顺序shuffle两个list的方法
Dec 13 Python
Python设计模式之迭代器模式原理与用法实例分析
Jan 10 Python
python单例模式的多种实现方法
Jul 26 Python
用Cython加速Python到“起飞”(推荐)
Aug 01 Python
Python数据分析模块pandas用法详解
Sep 04 Python
浅析Python3 pip换源问题
Jan 06 Python
python使用ctypes调用扩展模块的实例方法
Jan 28 Python
基于python实现计算且附带进度条代码实例
Mar 31 Python
Python使用shutil模块实现文件拷贝
Jul 31 Python
python产生模拟数据faker库的使用详解
Nov 04 Python
利用Python产生加密表和解密表的实现方法
Oct 15 #Python
python多线程并发及测试框架案例
Oct 15 #Python
浅析PEP570新语法: 只接受位置参数
Oct 15 #Python
浅析PEP572: 海象运算符
Oct 15 #Python
Python 导入文件过程图解
Oct 15 #Python
Python3.8对可迭代解包的改进及用法详解
Oct 15 #Python
Python 3.8正式发布,来尝鲜这些新特性吧
Oct 15 #Python
You might like
php一些公用函数的集合
2008/03/27 PHP
php的chr和ord函数实现字符加减乘除运算实现代码
2011/12/05 PHP
php事件驱动化设计详解
2016/11/10 PHP
Laravel实现autoload方法详解
2017/05/07 PHP
php防止表单重复提交实例讲解
2019/02/11 PHP
javascript淡入淡出效果的实现思路
2012/03/31 Javascript
JQuery在页面中添加和除移DOM示例代码
2013/06/24 Javascript
JavaScript遍历table表格中的某行某列并打印其值
2014/07/08 Javascript
基于豆瓣API+Angular开发的web App
2015/01/02 Javascript
深入探寻seajs的模块化与加载方式
2015/04/14 Javascript
JavaScript中的 attribute 和 jQuery中的 attr 方法浅析
2017/01/04 Javascript
老生常谈js数据类型
2017/08/03 Javascript
angularjs 缓存的使用详解
2018/03/19 Javascript
详解Vue取消eslint语法限制
2018/08/04 Javascript
了解在JavaScript中将值转换为字符串的5种方法
2019/06/06 Javascript
js/jQuery实现全选效果
2019/06/17 jQuery
Element ui 下拉多选时新增一个选择所有的选项
2019/08/21 Javascript
超简单的微信小程序轮播图
2019/11/22 Javascript
[04:38]完美世界携手游戏风云打造 卡尔工作室饰品系统篇
2013/04/25 DOTA
Python中type的构造函数参数含义说明
2015/06/21 Python
详解配置Django的Celery异步之路踩坑
2018/11/25 Python
Python3实现的简单三级菜单功能示例
2019/03/12 Python
djano一对一、多对多、分页实例代码
2019/08/16 Python
普天C++笔试题
2016/03/20 面试题
销售部主管岗位职责
2013/12/18 职场文书
井冈山红色之旅感想
2014/10/07 职场文书
2014年办公室主任工作总结
2014/11/12 职场文书
2015年五四青年节活动总结
2015/02/10 职场文书
学校食堂管理制度
2015/08/04 职场文书
幼儿园安全教育随笔
2015/08/14 职场文书
MySQL修改默认引擎和字符集详情
2021/09/25 MySQL
SQL中的三种去重方法小结
2021/11/01 SQL Server
我的收音机情缘
2022/04/05 无线电
vue 数字翻牌器动态加载数据
2022/04/20 Vue.js
使用HBuilder制作一个简单的HTML5网页
2022/07/07 HTML / CSS
redis protocol通信协议及使用详解
2022/07/15 Redis