python霍兰德人格分析出错

#HollandRadarDraw

import numpy as np

import matplotlib.pyplot as plt

import matplotlib

matplotlib.rcParams['font.family']='SimHei'

radar_labels = np.array(['研究型(I)','艺术型(A)','社会型(S)',\

                         '企业型(E)','常规型(C)','现实型(R)']) #雷达标签

nAttr = 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 = ('艺术家', '实验员', '工程师', '推销员', '社会工作者','记事员')

angles = np.linspace(0, 2*np.pi, nAttr, endpoint=False)

data = np.concatenate((data, [data[0]]))

angles = np.concatenate((angles, [angles[0]]))

fig = plt.figure(facecolor="white")

plt.subplot(111, polar=True)

plt.plot(angles,data,'o-', linewidth=1, alpha=0.2)

plt.fill(angles,data, alpha=0.25)

plt.thetagrids(angles*180/np.pi, radar_labels,frac = 1.2)

plt.figtext(0.52, 0.95, '霍兰德人格分析', ha='center', size=20)

legend = plt.legend(data_labels, loc=(0.94, 0.80), labelspacing=0.1)

plt.setp(legend.get_texts(), fontsize='large')

plt.grid(True)

plt.savefig('holland_radar.jpg')

plt.show()

错误提示:

Traceback (most recent call last):

  File "D:/PYEcourse/HollandRadarDraw.py", line 23, in <module>

    plt.thetagrids(angles*180/np.pi, radar_labels,frac = 1.2)

  File "D:\Program Files\Python\python37\lib\site-packages\matplotlib\pyplot.py", line 1768, in thetagrids

    lines, labels = ax.set_thetagrids(*args, **kwargs)

  File "D:\Program Files\Python\python37\lib\site-packages\matplotlib\projections\polar.py", line 1268, in set_thetagrids

    t.update(kwargs)

  File "D:\Program Files\Python\python37\lib\site-packages\matplotlib\text.py", line 187, in update

    super().update(kwargs)

  File "D:\Program Files\Python\python37\lib\site-packages\matplotlib\artist.py", line 916, in update

    ret = [_update_property(self, k, v) for k, v in props.items()]

  File "D:\Program Files\Python\python37\lib\site-packages\matplotlib\artist.py", line 916, in <listcomp>

    ret = [_update_property(self, k, v) for k, v in props.items()]

  File "D:\Program Files\Python\python37\lib\site-packages\matplotlib\artist.py", line 912, in _update_property

    raise AttributeError('Unknown property %s' % k)

AttributeError: Unknown property frac


weixin_慕田峪9323363
浏览 3767回答 6
6回答

yanzhen327

 把plt.thetagrids(angles*180/np.pi, radar_labels,frac = 1.2)中的frac参数去掉就好

weixin_慕仔0553392

如果是22行报错,删掉frac=1.2改完后如果还显示27行报错,将输出的照片格式jpg改为png。原因是可能缺少了模块pillow的支持,安装后pillow库后可以正常输出jpg的格式。

pardon110

你用的应该是库的最新版本,其方法内部是不需要使用到该关键字参数的,你去掉就可以了。

慕莱坞1393978

同样的问题,求解答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python