一,雷达图
雷达图是一种特殊的绘图方式,它是由一系列同心圆形构成的图表,用来展示多个变量之间的关系。每个变量都沿着不同的角度从中心向外延伸,并且其大小由相应的数值决定。
雷达图的基本参数
- num_vars:定义了雷达图中有多少个变量。
- frame:定义了雷达图的形状,可以设置为'circle'或'diamond'。
- theta:定义了雷达图的角度范围,以弧度为单位。
- labels:定义了雷达图上每个轴的标签。
- values:定义了每个变量的数据值。
- fill_area:如果设置为True,则会在雷达图内部填充颜色。
- line_color:定义了雷达图线条的颜色。
- face_color:定义了雷达图内部区域的颜色。
- linewidth:定义了雷达图线条的宽度。
- edgecolor:定义了雷达图边缘的颜色。
二,绘制雷达图
1.导入numpy及matplotlib库并设置中文
import numpy as np
import matplotlib.pyplot as plt #导入库
plt.rcParams['font.family'] = 'SimHei'
plt.rcParams['axes.unicode_minus'] = False #设置中文
2.准备数据
#准备需要的数据
dim_num = 6
radians = np.linspace(0, 2 * np.pi, dim_num, endpoint=False)
radians = np.concatenate((radians, [radians[0]]))
score_a = np.array([41,38,36,62,68,100])
score_a = np.concatenate((score_a, [score_a[0]]))
score_b = np.array([91,88,83,72,78,26])
score_b = np.concatenate((score_b, [score_b[0]]))
score_c = np.array([81,78,85,76,74,36])
score_c = np.concatenate((score_c, [score_c[0]]))
3. 设置标签并使用雷达图闭合
a=['数学','英语','线代','爬虫','数据可视化','吃喝玩乐']
a=np.concatenate((a,[a[0]]))
4.绘制雷达图及设置填充
#绘制雷达图
plt.polar(radians,score_a,radians,score_b,radians,score_c)
#设置坐标
plt.thetagrids(radians * 180/np.pi, labels=a)
#设置填充
plt.fill(radians,score_a,facecolor='red',alpha=0.25) #设置填充的颜色及其透明度
plt.fill(radians,score_b,facecolor='yellow',alpha=0.25) #设置填充的颜色及其透明度
plt.fill(radians,score_c,facecolor='blue',alpha=0.25) #设置填充的颜色及其透明度
#展示图
plt.show()