雷达图介绍
雷达图是以从同一点开始的轴上表示的三个或更多个定量变量的二维图表的形式显示多变量数据的图形方法。轴的相对位置和角度通常是无信息的。 雷达图也称为网络图,蜘蛛图,星图,蜘蛛网图,不规则多边形,极坐标图或Kiviat图。它相当于平行坐标图,轴径向排列。【搜狗百科】
雷达图通常用于综合分析多个指标,具有完整,清晰和直观的优点。
下面用实现用python制作雷达图的方法和过程:
雷达图制作
定义标准化函数
from numpy import array
from sklearn import preprocessing
import matplotlib.pyplot as plt
def normalization(data,method,feature_range=(0,1)):
if(method=='z_score'):
train_data_scale = data.apply(lambda x: (x - np.mean(x)) / np.std(x) )
if(method=='min_max'):
train_data_scale = data.apply(lambda x: (x - np.min(x)) / (np.max(x) - np.min(x)))
return train_data_scale
绘制雷达图-圆形
def radar_map(data,sel_col,scale_method,label_num,close_label):
x_scale = normalization(data[sel_col],method = scale_method)
r1 = pd.Series(data.label).value_counts()
r2 = x_scale.groupby(data.label).mean() #指标统计方法:均值
r = pd.concat([r1,r2], axis = 1) #得到标签各类别的规模
r