mmxvoodoo 发表于 2020-3-2 00:28:52

三国志11全武将5维图

因疫情放假在家,0基础开始学python,学到今天开始侧重于pandas分析数据功能,今天闲来无事生成了光荣三国志11全武将5维图,代码很简单,给各位大咖献丑了!
import pandas as pd
import matplotlib.pyplot as plt
%matplotlib inline
plt.rcParams['font.sans-serif']='SimHei'
plt.rcParams['axes.unicode_minus']=False
%config InlineBackend.figure_format = 'svg'
df = pd.read_excel(r'(源数据位置)')
for i in range(716):
    str_name = df['姓名'].tolist()
    df_name=df==str_name].iloc[:,0:8]
    plt.subplot(1,1,1, polar=True)
    plt.ylim(0,100)
    dataLenth=5
    angles = np.linspace(0,2*np.pi,dataLenth,endpoint=False)
    angles = np.concatenate((angles,]))
    labels=}',f'武力:{df_name.iloc}',f'智力:{df_name.iloc}',f'政治:{df_name.iloc}',f'魅力:{df_name.iloc}']
    plt.xticks(angles, labels)
    plt.tick_params(axis= 'x', pad = 4, labelcolor = 'b', labelsize = 8)
    data = df_name.iloc[:,3:8].values.tolist()
    data = np.concatenate((data,]))   
    plt.polar(angles,data,color='m', marker='o')   
    plt.title(label = f'{df_name.iloc} {str_name} 综合:{df_name.iloc} 排名:{df_name.index.tolist()+1}')
    filename = f'{i+1:0>3d}_{df_name.iloc}_{str_name}.png'
    plt.savefig(f'(你想保存的位置)', dpi=200)
    plt.clf()
IDE用的是Jupyter notebook。
以下是效果图



这是源数据和生成的所有图片(共716人):
链接: https://pan.baidu.com/s/1pYYf-iXWu5l-u-bJVCR58w 提取码: jesc

乘号 发表于 2020-3-2 08:45:45

taotaozcp 发表于 2020-4-20 15:06:15

{:10_254:}{:10_254:}{:10_254:}{:10_254:}{:10_254:}
页: [1]
查看完整版本: 三国志11全武将5维图