Day3-《青春有你2》选手数据分析

需要书写的代码部分

import matplotlib.pyplot as plt

import numpy as np 

import json

import matplotlib.font_manager as font_manager

import pandas as pd

 

#显示matplotlib生成的图形

%matplotlib inline


 

df = pd.read_json('data/data31557/20200422.json')

#print(df)

 

grouped=df['name'].groupby(df['weight'])

s = grouped.count()

 

zone_list = s.index

count_list = s.values

 

new_zone_list={}

for z,v in  zip(zone_list,count_list):

    z1=float(z.replace('kg',''))

    if z1<=45.0:

        if '<=45kg' in new_zone_list:

            a=new_zone_list['<=45kg']

 

            new_zone_list['<=45kg']=v+a

        else:

            new_zone_list['<=45kg']=v

    elif z1>45.0 and z1<=50.0:

        if '45~50kg' in new_zone_list:

            a=new_zone_list['45~50kg']

 

            new_zone_list['45~50kg']=v+a

        else:

            new_zone_list['45~50kg']=v

    elif z1 >50.0 and z1 <=55.0:

        if '50~55kg' in new_zone_list:

            a=new_zone_list['50~55kg']

 

            new_zone_list['50~55kg']=v+a

        else:

            new_zone_list['50~55kg']=v

    else:

        if '>55kg' in new_zone_list:

            a=new_zone_list['>55kg']

 

            new_zone_list['>55kg']=v+a

        else:

            new_zone_list['>55kg']=v

print(new_zone_list)

if new_zone_list:

    

    zone_list = list(new_zone_list.keys())

    count_list = list(new_zone_list.values())

 

# # 设置显示中文

plt.rcParams['font.sans-serif'] = ['SimHei'] # 指定默认字体

 

plt.figure(figsize=(10,10))

# plt.bar(range(len(count_list)), count_list,color='r',tick_label=zone_list,facecolor='#9999ff',edgecolor='white')

explode=0.1,0.1,0,0

plt.pie(count_list,explode=explode,labels=zone_list,autopct='%1.1f%%',shadow=True,startangle=30)

# 这里是调节横坐标的倾斜度,rotation是度数,以及设置刻度字体大小

# plt.xticks(rotation=45,fontsize=20)

# plt.yticks(fontsize=20)

 

plt.legend()

plt.title('''《青春有你2》选手体重分析''',fontsize = 24)

plt.savefig('/home/aistudio/work/result/pie_result2.jpg')

plt.axis('equal')

plt.show()

©️2020 CSDN 皮肤主题: 大白 设计师: CSDN官方博客 返回首页
实付0元
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值