zoukankan      html  css  js  c++  java
  • 球员能力值图

    #_*_coding:utf-8 _*_
    import numpy as np
    import matplotlib.pyplot as plt
    from matplotlib.font_manager import FontProperties

    plt.style.use('ggplot')
    font=FontProperties(fname=r'C:WindowsFontsSTXINGKA.TTF',size=10)
    ability_size=6
    ability_label=[u'进攻',u'防守',u'盘带',u'速度',u'体力',u'射术']

    ax1=plt.subplot(221,projection='polar')
    ax2=plt.subplot(222,projection='polar')
    ax3=plt.subplot(223,projection='polar')
    ax4=plt.subplot(224,projection='polar')

    player={
    'A':np.random.randint(size=ability_size,low=60,high=99),
    'B':np.random.randint(size=ability_size,low=60,high=99),
    'C':np.random.randint(size=ability_size,low=60,high=99),
    'D':np.random.randint(size=ability_size,low=60,high=99),
    }


    theta=np.linspace(0,2*np.pi,6,endpoint=False)

    theta=np.append(theta,theta[0])

    player['A']=np.append(player['A'],player['A'][0])
    ax1.plot(theta,player['A'],'r')
    ax1.fill(theta,player['A'],'r',alpha=0.2)
    ax1.set_xticks(theta)
    ax1.set_xticklabels(ability_label,y=0.01,fontproperties=font)
    ax1.set_title(u'球员A',position=(0.5,0.99),fontproperties=font,color='red',size=20)


    player['B']=np.append(player['B'],player['B'][0])
    ax2.plot(theta,player['B'],'g')
    ax2.fill(theta,player['B'],'g',alpha=0.2)
    ax2.set_xticks(theta)
    ax2.set_xticklabels(ability_label,y=0.01,fontproperties=font)
    ax2.set_title(u'球员B',position=(0.5,0.99),fontproperties=font,color='green',size=20)

    player['C']=np.append(player['C'],player['C'][0])
    ax3.plot(theta,player['C'],'b')
    ax3.fill(theta,player['C'],'b',alpha=0.2)
    ax3.set_xticks(theta)
    ax3.set_xticklabels(ability_label,y=0.01,fontproperties=font)
    ax3.set_title(u'球员C',position=(0.5,0.99),fontproperties=font,color='blue',size=20)

    player['D']=np.append(player['D'],player['D'][0])
    ax4.plot(theta,player['D'],'y')
    ax4.fill(theta,player['D'],'y',alpha=0.2)
    ax4.set_xticks(theta)
    ax4.set_xticklabels(ability_label,y=0.01,fontproperties=font)
    ax4.set_title(u'球员D',position=(0.5,0.99),fontproperties=font,color='yellow',size=20)
    plt.show()

    这是我的代码

    以下是效果图:

     能力值使用numpy的随机库生成的

    最难的还是编码问题,起初把汉字搞上去的时候会出现编码错误,后来在开头加了编码的注释发现还是显示不出来,但是不会报错了

    查了好多最后才发现问题不在python,在matplotlib,于是上官网看了一下有个fontproperties的类,可以从系统引入字体路径,才得已解决。

  • 相关阅读:
    VS2008编写MFC程序--使用opencv2.4()
    November 02nd, 2017 Week 44th Thursday
    November 01st, 2017 Week 44th Wednesday
    October 31st, 2017 Week 44th Tuesday
    October 30th, 2017 Week 44th Monday
    October 29th, 2017 Week 44th Sunday
    October 28th, 2017 Week 43rd Saturday
    October 27th, 2017 Week 43rd Friday
    October 26th, 2017 Week 43rd Thursday
    October 25th, 2017 Week 43rd Wednesday
  • 原文地址:https://www.cnblogs.com/xiaomei123/p/12900417.html
Copyright © 2011-2022 走看看