【Python】绘制雷达图

【Python】绘制雷达图

之前在一些数据分析案例中看到用 Go 语言绘制的雷达图,非常的漂亮,就想着用matlibplot.pyplot也照着画一个,遗憾的是matlibplot.pyplot模块中没有直接绘制雷达图的函数,不过可以基于‘polar’图形特征来改进,下面就记录一下如何绘制雷达图。

import numpy as np
import matplotlib.pyplot as plt
# 用于正常显示中文
plt.rcParams['font.sans-serif'] = 'SimHei'
#用于正常显示符号
plt.rcParams['axes.unicode_minus'] = False
 
# 使用ggplot的绘图风格,这个类似于美化了,可以通过plt.style.available查看可选值,你会发现其它的风格真的丑。。。
plt.style.use('ggplot')
 
# 构造数据
values = [2.6,2.1,3.4,3,4.1]
feature = ['个人能力','QC知识','解决问题能力','服务质量意识','团队精神']
 
# 设置每个数据点的显示位置,在雷达图上用角度表示
angles=np.linspace(0, 2*np.pi,len(values), endpoint=False)
 
# 拼接数据首尾,使图形中线条封闭
values=np.concatenate((values,[values[0]]))
angles=np.concatenate((angles,[angles[0]]))
 
# 绘图
fig=plt.figure()
# 设置为极坐标格式
ax = fig.add_subplot(111, polar=True)
# 绘制折线图
ax.plot(angles, values, 'o-', linewidth=2)
# 填充颜色
ax.fill(angles, values, alpha=0.25)
 
# 设置图标上的角度划分刻度,为每个数据点处添加标签
ax.set_thetagrids(angles * 180/np.pi, feature)
 
# 设置雷达图的范围
ax.set_ylim(0,5)
# 添加标题
plt.title('活动前后员工状态表现')
# 添加网格线
ax.grid(True)
 
plt.show()

在这里插入图片描述
一般我们用雷达图时,是为了比较两组数据,因此看一下如何用雷达图比较两组数据

values_2=[1.7,4.1,3.3,2.6,3.8]
values_2=np.concatenate([values_2,[values_2[0]]])
 
fig=plt.figure()
ax = fig.add_subplot(111, polar=True)
ax.plot(angles, values, 'o-', linewidth=2,label='活动前')
ax.fill(angles, values, alpha=0.25)
 
ax.plot(angles, values_2, 'o-', linewidth=2,label='活动后')
ax.fill(angles, values_2, alpha=0.25)
 
ax.set_thetagrids(angles * 180/np.pi, feature)
ax.set_ylim(0,5)
plt.title('活动前后员工状态表现')
plt.legend(loc='best')
ax.grid(True)
plt.show()

在这里插入图片描述
当有多组数据的时候,为了代码的简洁,我们可以用for循环来画。

import numpy as np
import matplotlib.pyplot as plt
# 用于正常显示中文
plt.rcParams['font.sans-serif'] = 'SimHei'
#用于正常显示符号
plt.rcParams['axes.unicode_minus'] = False
 
# 使用ggplot的绘图风格,这个类似于美化了,可以通过plt.style.available查看可选值,你会发现其它的风格真的丑。。。
plt.style.use('ggplot')
 
# 构造数据
values1 = [2.6,2.1,3.4,3,4.1]
values2 = [1.7,4.1,3.3,2.6,3.8]
feature = ['个人能力','QC知识','解决问题能力','服务质量意识','团队精神']
 
# 设置每个数据点的显示位置,在雷达图上用角度表示
angles=np.linspace(0, 2*np.pi,len(feature), endpoint=False)
angles=np.concatenate((angles,[angles[0]]))
# 绘图
fig=plt.figure()
for values in [values1, values2]:
# 拼接数据首尾,使图形中线条封闭
    values=np.concatenate((values,[values[0]]))
    # 设置为极坐标格式
    ax = fig.add_subplot(111, polar=True)
    # 绘制折线图
    ax.plot(angles, values, 'o-', linewidth=2)
    # 填充颜色
    ax.fill(angles, values, alpha=0.25)
     
    # 设置图标上的角度划分刻度,为每个数据点处添加标签
    ax.set_thetagrids(angles * 180/np.pi, feature)
     
    # 设置雷达图的范围
    ax.set_ylim(0,5)
# 添加标题
plt.title('活动前后员工状态表现')
# 添加网格线
ax.grid(True)
 
plt.show()

在这里插入图片描述
不过说实话,这个图形并不怎么美观,个人感觉主要是背景颜色得换一下。之前还看到有人用pygal库(pygal库绘制世界地图信息挺不错)绘图库绘制雷达图

import pygal
 
# 调用Radar这个类,并设置雷达图的填充,及数据范围
radar_chart = pygal.Radar(fill = True, range=(0,5))
# 添加雷达图的标题
radar_chart.title = '活动前后员工状态表现'
# 添加雷达图各顶点的含义
radar_chart.x_labels = ['个人能力','QC知识','解决问题能力','服务质量意识','团队精神']
 
# 绘制两条雷达图区域
radar_chart.add('活动前', [3.2,2.1,3.5,2.8,3])
radar_chart.add('活动后', [4,4.1,4.5,4,4.1])
 
# 保存图像
radar_chart.render_to_file('radar_chart.svg')

在这里插入图片描述
这个图就好看很多,而且还是可以交互显示信息的图形。
转载,原地址:https://blog.csdn.net/zx1245773445/article/details/96992357

<think>好的,用户想在虚拟机安装EulerOS欧拉系统,我需要根据提供的引用信息给出详细的步骤。首先,我需要确认用户提到的EulerOS欧拉系统是否指的是同一款操作系统。根据引用1和引用2,EulerOS和openEuler都是相关的,但可能有不同版本。引用1提到EulerOS V2.0SP5,而引用2讨论的是openEuler LTS,所以可能需要区分这两个版本。 接下来,用户需要的是安装步骤。根据引用1和引用3,安装过程大致分为准备镜像、创建虚拟机安装系统、配置系统几个步骤。引用1提到在虚拟机中新建并导入镜像,选择安装选项,然后进行分区和网络配置。引用3提供了ISO镜像的下载链接,用户需要先下载正确的镜像文件。 用户可能遇到的问题包括镜像下载地址是否正确安装过程中的分区设置,以及网络配置的问题。需要确保步骤清晰,特别是分区部分,因为新手可能会对此感到困惑。另外,引用2提到在笔记本上安装,可能需要考虑硬件兼容性,但用户是在虚拟机安装,所以可能不需要担心驱动问题。 需要检查每个步骤是否详细,比如如何创建虚拟机(使用VMware还是其他软件),如何导入镜像,安装过程中的具体选项,例如选择语言、时区,设置root密码等。此外,安装后的初始化配置,如更新系统和安装必要工具,也需要包括在内,以帮助用户完成整个流程。 最后,要确保按照用户的要求,使用正确的中文术语,结构清晰,分步骤说明。同时,根据用户提供的引用,正确标注引用来源,比如在下载镜像和安装步骤中引用对应的链接和说明。如果有多个引用涉及相同步骤,可能需要合并信息,确保步骤完整。</think>在虚拟机安装EulerOS操作系统的步骤如下,结合了主流虚拟化平台(如VMware或VirtualBox)的通用流程: ### 一、准备工作 1. **下载系统镜像** 访问[openEuler官方镜像仓库](https://repo.openeuler.org/)选择LTS版本(如22.03-LTS),下载ISO文件[^3]。 2. **创建虚拟机** - VMware中点击`新建虚拟机` → 选择`自定义配置` - 内存建议≥4GB,硬盘空间≥20GB - 网络模式推荐`NAT`或`桥接`[^1] ### 二、安装过程 ```bash # 示例:虚拟机启动后自动进入安装界面 [屏幕显示] Install EulerOS 22.03-LTS ``` 1. **启动安装程序** 选择`Install EulerOS`进入图形安装界面[^1] 2. **分区设置(关键步骤)** - 选择`自动分区`或手动创建: - `/boot`分区:1GB - `swap`分区:内存的1-2倍 - `/`根分区:剩余所有空间 3. **网络配置** 启用以太网连接,建议开启`自动获取IP地址`[^1] ### 三、安装后配置 1. **首次登录** 使用安装设置的root密码登录 2. **更新系统** ```bash dnf update && dnf upgrade ``` 3. **安装常用工具** ```bash dnf install vim git net-tools ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值