雷达图
雷达图又称戴布拉图、蜘蛛网图,可以很好刻画出某些指标的横向或纵向的对比关系
雷达图通常用于多想指标的全面分析。 比如:HR想要比较两个应聘者的综合素质,用雷达图分别画出来,就可以进行直观的比较
python中matplotlib模块绘制雷达图需要用到极坐标系。
雷达图之极坐标系
在平面内去一个定点O,叫极点,引一条射线Ox,叫做极轴,在选定一个长度单位和角度的正方向(通常去逆时针方向)。对于平面内任何一点M,用p表示线段OM的长度(有时也用r),の表示从Ox到OM的角度,p叫做点M的极径,の叫做点M的极角,有序数对(p,の)就叫做点M的极坐标,这样建立的坐标系叫做极坐标系。
通常情况下,M的极径坐标单位为1,极角坐标单位为1°。
雷达图的polar函数
polar(theta,r,**kwargs)
主要参数:
theta:极角の
r:极径
1.普通小图
import matplotlib.pyplot as plt
import numpy as np
plt.polar(0.25*np.pi,20,'ro',lw=2) # r表示红色,o是圆点 lw宽度为2
plt.ylim(0,50) # 设置极轴的上下限
plt.show()
2.如果绘制多个极角和极轴时:
theta:定义了一个ndarry数组存储多个数据。
r:定义一个数组存放极轴的长度,也叫极径。
import matplotlib.pyplot as plt
import numpy as np
theta = np.array([0.25,0.5,0.75,1,1.25,1.5,1.75,2])
r = [75,25,40,64,58,14,80,29]
plt.polar(theta*np.pi,r,'ro',lw=2)
plt.ylim(0,100)
plt.show()
# 在图中绘制出多个点:(0.25*π,75),(0.5*π,25).....的点