Python雷达图详解

雷达图(Radar Chart)是一种用于显示多变量数据的图形表示方法,它将多个变量的数据以不同的角度和半径绘制在一个圆形的图表上,通过连接各个数据点形成多边形,从而直观地展示各个变量之间的相对关系,雷达图常用于评估和比较多个指标的表现,如企业绩效、员工评价等。

创新互联建站专业为企业提供易县网站建设、易县做网站、易县网站设计、易县网站制作等企业网站建设、网页设计与制作、易县企业网站模板建站服务,10多年易县做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。

在Python中,我们可以使用matplotlib库来绘制雷达图,以下是一个简单的雷达图绘制示例:

1、我们需要安装matplotlib库,在命令行中输入以下命令进行安装:

pip install matplotlib

2、接下来,我们编写一个绘制雷达图的函数:

import numpy as np
import matplotlib.pyplot as plt
def radar_chart(data, labels):
    # 计算角度和半径
    angles = np.linspace(0, 2 * np.pi, len(labels), endpoint=False).tolist()
    data = np.concatenate((data, [data[0]]))  # 闭合数据,使多边形闭合
    angles += angles[:1]  # 闭合角度,使多边形闭合
    radius = np.sqrt(np.dot(data, data) / len(data))
    angles = angles[:1]  # 去掉最后一个闭合角度
    # 绘制雷达图
    fig, ax = plt.subplots(figsize=(6, 6), subplot_kw=dict(polar=True))
    ax.fill(angles, data, color='red', alpha=0.25)
    ax.set_yticklabels([])  # 隐藏y轴刻度
    ax.set_xticks(angles[:1])  # 隐藏最后一个闭合角度的x轴刻度
    ax.set_xticklabels(labels)
    plt.show()

3、使用上述函数绘制一个简单的雷达图:

data = [5, 7, 3, 8, 4]
labels = ['A', 'B', 'C', 'D', 'E']
radar_chart(data, labels)

以上代码将绘制一个包含5个指标(A、B、C、D、E)的雷达图,每个指标的值分别为5、7、3、8、4,雷达图将以红色填充多边形区域。

4、如果我们希望调整雷达图的颜色、透明度等样式,可以在radar_chart函数中添加相应的参数和设置:

def radar_chart(data, labels, color='red', alpha=0.25):
    # ...省略其他代码...
    ax.fill(angles, data, color=color, alpha=alpha)
    # ...省略其他代码...

5、我们还可以使用plt.title()plt.xlabel()plt.ylabel()等函数为雷达图添加标题、坐标轴标签等:

def radar_chart(data, labels, title='', xlabel='', ylabel=''):
    # ...省略其他代码...
    ax.set_title(title)
    ax.set_xlabel(xlabel)
    ax.set_ylabel(ylabel)
    plt.show()

6、我们可以使用numpy库生成一些随机数据,并使用我们的radar_chart函数绘制一个更复杂的雷达图:

import numpy as np
import matplotlib.pyplot as plt
from matplotlib.font_manager import FontProperties
def radar_chart(data, labels, title='', xlabel='', ylabel=''):
    # ...省略其他代码...
    pass
生成随机数据
np.random.seed(0)
data = np.random.randint(1, 10, size=(5, 5)).tolist()[0] + [np.mean([np.sum(row) for row in data])]  # 闭合数据,使多边形闭合
labels = ['A', 'B', 'C', 'D', 'E'] + ['Mean']  # 添加均值标签
title = 'Example Radar Chart'  # 添加标题
xlabel = ''  # 删除x轴标签
ylabel = ''  # 删除y轴标签
radar_chart(data, labels, title, xlabel, ylabel)

以上代码将生成一个包含5个指标(A、B、C、D、E)和一个均值指标的雷达图,每个指标的值均为1到9的随机整数,雷达图将以红色填充多边形区域,并添加标题“Example Radar Chart”。

网页题目:Python雷达图详解
文章来源:http://www.shufengxianlan.com/qtweb/news19/118619.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联