雷达图(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雷达图详解
文章URL:http://www.36103.cn/qtweb/news30/12380.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联