绘制霍兰德人格分析

一、绘制霍兰德人格分析

import matplotlib.pyplot as plt
import matplotlib.pyplot
import numpy as np

matplotlib.rcParams['font.family'] = 'SimHei'
matplotlib.rcParams['font.sans-serif'] = ['SimHei']
radar_labels = np.array(['研究型','艺术型','社会型','企业型','常规型','现实型'])
Attr = 6
data = 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,Attr,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,'bo-',color = 'gray',linewidth = 0.2)

plt.plot(angels,data,'o-',linewidth = 1.5,alpha=0.2)
plt.fill(angels,data,alpha =0.25)
plt.thetagrids(angels*180/np.pi,radar_labels)
print(angels*180/np.pi)
plt.figtext(0.55,0.95,'霍兰德人格分析',ha='center',size =10)
legend=plt.legend(data_labels,loc= (0.94,0.80),labelspacing=0.1)
plt.setp(legend.get_texts(),fontsize='small')
plt.grid(True)
plt.savefig('holland_radar.JPG')
plt.show()

运行结果

二、代码详解

1、matplotlib.pyplot.legend(*args**kwargs)[source]

作用:在图上放上图例

参数解释:

loc:int or string or pair of floats, default: 
图例所有在figure位置
prop: None or matplotlib.font_manager.FontProperties or dict
the font property字体参数
fontsize: int or float or {'xx-small', 'x-small', 'small', 'medium', 'large', 'x-large', 'xx-large'}
设置字体大小
markerscale:None or int or float

图例标记的相对大小与最初绘制的标记相比较。默认值是None,它将从中获取值 rcParams["legend.markerscale"]
markerfirst:bool
如果为True,则图例标记位于图例标签的左侧
numpoints:None or int
为线条图图例条目创建的标记点数
scatterpoints:None或int
the number of points in the legend for scatter plot
为散点图图例条目创建的标记点数
scatteryoffsets: None or int
为散点图图例条目创建的标记的垂直偏移量
frameon:None or bool
控制是否应在图例周围绘制框架
fancybox:None or bool
控制是否应在构成图例背景的FancyBboxPatch周围启用圆边
shadow:None or bool
控制是否在图例后面画一个阴影
framealpha:None or bool
控制图例框架的 Alpha 透明度
edgecolor

控制图例的背景色块边缘颜色。默认是None,这将需要从价值rcParams["legend.edgecolor"]如果"inherit",这将需要rcParams["axes.edgecolor"]

facecolor

控制图例的背景颜色。默认值是None,它将从中获取值rcParams["legend.facecolor"]如果"inherit",它将需要rcParams["axes.facecolor"]
Frame facecolor.
ncol:int or None
number of columns 设置图例分为n列展示
borderpad:int or None
图例边框的内边距
labelspacing:int or None
图例条目之间的垂直间距
handlelength:int or None
 图例句柄的长度
handleheight:int or None
图例句柄的高度
handletextpad:int or None

图例句柄和文本之间的间距

columnspacing: float或None

the spacing between columns 列间距
title:str或None
图例标题

posted on 2019-08-12 01:50  LiErRui  阅读(442)  评论(0编辑  收藏  举报

导航