【Matplotlib】多级雷达图绘制

news/2024/11/30 7:55:25/

一、实例1:个人能力画像雷达图

# -*- coding: utf-8 -*-
"""
Created on Sat Jul  1 20:52:54 2023@author: zcq
"""import numpy as np
import matplotlib.pyplot as plt
import matplotlibmatplotlib.rcParams['font.family']='SimHei'
matplotlib.rcParams['font.sans-serif']=['SimHei']labels = np.array(['A1:综合','A2:学历','A3:职称','A4:教学','A5:培训','A6:科研'])
nAttr = 6
data = np.array([7,5,9,7,8,6])
angels = np.linspace(0,2*np.pi,nAttr,endpoint=False)
data  = np.concatenate((data,[data[0]]))#级联函数data=[7, 5, 6, 9, 8, 6, 7]
angels = np.concatenate((angels,[angels[0]]))fig = plt.figure(facecolor='white')
plt.subplot(111,polar=True)
plt.plot(angels,data,'bo-',color='g',linewidth=2)
plt.fill(angels,data,facecolor='g',alpha=0.25)
plt.thetagrids(angels*180/np.pi,labels)
plt.figtext(0.52,0.95,'个人特征画像',ha='center')
plt.grid(True)
plt.savefig('radar.jpg')
plt.show()

 二、实例2:霍兰德人格分析雷达图

# -*- coding: utf-8 -*-
"""
Created on Sat Jul  1 20:52:54 2023@author: zcq
"""import numpy as np
import matplotlib.pyplot as plt
import matplotlibmatplotlib.rcParams['font.family']='SimHei'
matplotlib.rcParams['font.sans-serif']=['SimHei']radar_labels = np.array(['A1:研究型(I)','A2:艺术型(A)','A3:社会型(S)',\'A4:企业型(E)','A5:常规型(C)','A6:现实型(R)'])
nAttr = 6data = np.array([[0.40,0.32,0.35,0.30,0.30,0.88],[0.85,0.35,0.30,0.40,0.40,0.30],[0.43,0.89,0.30,0.28,0.22,0.30],[0.30,0.25,0.48,0.85,0.45,0.40],[0.20,0.38,0.87,0.45,0.32,0.28],[0.34,0.31,0.38,0.40,0.92,0.28]])
data_labels = ('工程师','实验员','艺术家','推销员','社会工作者','记事员')angels = np.linspace(0,2*np.pi,nAttr,endpoint=False)
data  = np.concatenate((data,[data[0]]))
angels = np.concatenate((angels,[angels[0]]))
fig = plt.figure(facecolor='white')
plt.subplot(111,polar=True)plt.plot(angels,data,'o-',linewidth=1,alpha=0.2)
plt.fill(angels,data,alpha=0.25)
plt.thetagrids(angels*180/np.pi,radar_labels)
plt.figtext(0.52,0.95,'霍兰德人格分析',ha='center',size=20)legend = plt.legend(data_labels,loc=(0.94,0.8),labelspacing=0.1)
plt.setp(legend.get_texts(),fontsize='small') plt.grid(True)
plt.savefig('Holland_radar.jpg')
plt.show()

 【参考文献】嵩天,礼欣,黄天羽著,python语言程序设计基础(第2版)[M],北京:高等教育出版社,2020.2

【参考链接】https://blog.csdn.net/weixin_44940191/article/details/126910761


http://www.ppmy.cn/news/676227.html

相关文章

B/S架构的C#云检验系统源码 实验室信息管理系统源码

科技的飞速发展为实验室信息管理带来了新机遇,云计算技术的应用更是为实验室信息管理打开了新的大门。云 LIS 实验室信息管理系统,作为一种新型的信息化管理方案,已经在多个实验室的信息化管理中得到应用,并且具有广阔的应用前景。…

判断一周中的某一天是否为工作日

public class SwitchDemo02 { public static void main(String[] args) { int week 2; switch (week) { case 1: case 2: case 3: case 4: case 5: // 当 week 满足值 1、2、3、4、5 中任意一个时,处理方式相同 System.out.println("今天是工作日"); bre…

工作日和休息日

package com.wanyii.scanner;import java.util.Scanner;public class gongzuori {public static void main(String[] args) {Scanner sc new Scanner(System.in);System.out.println("请输入星期数字");int xingqi sc.nextInt();switch (xingqi){case 1,2,3,4,5 -&…

判断工作日还是休息日

输入一周中的某一天&#xff0c;判断这一天是工作日还是周末休息日&#xff0c;用1~7表示周一到周日。 #include <stdio.h>int main() { //初始化模块int x; printf("输入日期数&#xff1a;");scanf("%d",&x);//判断模块 switch(x){case 1:c…

输入一个日期,****年**月**日,如何判断是否为工作日?

今天让写一个程序&#xff1a;输入日期&#xff0c;计算是否为工作日。有以下几个思路&#xff1a; 首先是第一种计算原理&#xff1a; 把你想要知道的日期号&#xff0c;加上该月份代号&#xff0c;再除以7&#xff0c;能整除的就是星期日&#xff1b;不能整除的&#xff0c…

计算工作日

VB、VBA中计算工作日&#xff08;仅剔除星期六、日&#xff09;的函数。 Function GetWorkdayCount(StartDay As Date, EndDay As Date) As Integer Dim NumS As Integer, NumY As Integer Dim WeekdayNumY(7, 6) As Integer WeekdayNumY(1, 1) 0 WeekdayNumY(1, 2) 0 Weekd…

计算工作日剩余天数

CREATE OR REPLACE FUNCTION “F_TEST6” ( acceptTime in varchar2, promiseDay in varchar2 ) return number is –返回值 return_num number; totleTime number; totleYGMDays number; totleFjDays number; totleJBDays number; currentDay char(1); calcDate date; begin…

php工作日,计算工作日的天数

经过几个小时的编程&#xff0c;测试&#xff0c;终于把这个看起来比较复杂的算法搞清楚了。有一个需求是需要计算两个时间段内的工作日(周一到周五)的天数。当然不包括国家规定的假期。 无 ?phpfunction calcDays($start_date,$end_date){$start_time strtotime($start_date…