栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

【Python可视化】绘制学生成绩的雷达图

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

【Python可视化】绘制学生成绩的雷达图

一、雷达图介绍

雷达图,又叫蜘蛛网图、极坐标图。
雷达图相当于平行坐标图,其中轴径向排列。

二、Python代码

栗子:给定某学生的各科成绩,绘制雷达图。
步骤:
(1)得到自变量和因变量;
(2)需要用angles角度数组,将圆周分为dataLength份,然后【闭合】操作。
(3)设置雷达图参数。

# -*- coding: utf-8 -*-
"""
Created on Mon Feb 14 15:09:43 2022

@author: 86493
"""
import matplotlib.pyplot as plt
import numpy as np
%matplotlib inline
# 某学生的课程与成绩
courses = ['数据结构', '数据可视化', '高数', '英语', '软件工程', '组成原理', 'C语言', '体育']
scores = [82, 95, 78, 85, 45, 88, 76, 88]
dataLength = len(scores)               # 数据长度
# angles数组把圆周等分为dataLength份
angles = np.linspace(0, 2*np.pi, dataLength, endpoint=False)    
courses.append(courses[0])
scores.append(scores[0])
angles = np.append(angles, angles[0])  # 闭合
# 绘制雷达图
plt.polar(angles,              # 设置角度
          scores,            # 设置各角度上的数据
          'rv--',             # 设置颜色、线型和端点符号
          linewidth=2)       # 设置线宽
# 设置角度网格标签
plt.thetagrids(angles*180/np.pi, courses, fontproperties='simhei', fontsize=12)
# 填充雷达图内部
plt.fill(angles, scores, facecolor='r', alpha=0.2)
plt.show()


由上图可视化结果得到,“数据可视化”成绩高分,“软件工程”这门课较低分, 能够很好地横向对比,看到哪科偏科。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/738879.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号