从昨天在百度百科爬取到的《青春有你2》参赛选手的数据,对选手的地区,体重等信息进行数据可视化。
话不多说,直接上代码。
import matplotlib.pyplot as plt
import numpy as np
import json
import matplotlib.font_manager as font_manager
#显示matplotlib生成的图形
%matplotlib inline
df = pd.read_json('data/data31557/20200422.json')
grouped=df['name'].groupby(df['zone'])
s = grouped.count()
zone_list = s.index
count_list = s.values
# 设置显示中文
plt.rcParams['font.sans-serif'] = ['SimHei'] # 指定默认字体
plt.figure(figsize=(20,15))
plt.bar(range(len(count_list)), count_list,color='r',tick_label=zone_list,facecolor='#9999ff',edgecolor='white')
# 这里是调节横坐标的倾斜度,rotation是度数,以及设置刻度字体大小
plt.xticks(rotation=45,fontsize=20)
plt.yticks(fontsize=20)
plt.legend()
plt.title('''《青春有你2》参赛选手''',fontsize = 24)
# 存储结果图
# plt.savefig('/home/aistudio/work/result/bar_result.jpg')
# 显示图片
# plt.show()
参赛选手地区分布情况柱形图:
with open('data/data31557/20200422.json', 'r', encoding='UTF-8') as file:
json_array = json.loads(file.read())
#绘制小姐姐体重分布柱状图,x轴为地区,y轴为该区域的小姐姐数量
weights = []
for star in json_array:
weight = star['weight']
weights.append(weight)
weight_list = []
count_list = []
for weight in weights:
if weight not in weight_list:
count = weights.count(weight)
weight_list.append(weight)
count_list.append(count)
plt.figure(figsize=(20,15))
plt.bar(range(len(count_list)), count_list,color='r',tick_label=weight_list,facecolor='#9999ff',edgecolor='white')
# # 设置显示中文
plt.rcParams['font.sans-serif'] = ['SimHei'] # 指定默认字体
plt.title('''《青春有你2》参赛选手体重分布情况''',fontsize = 24)
参赛选手体重分布柱形图:
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
df00 = pd.read_json('data/data31557/20200422.json')
grouped=df00['name'].groupby(df00['weight'])
s = grouped.count()
# 统计指定范围的数据
a = s[s.index '45') & (s.index '50') & (s.index '55')].sum()
data = [a, b, c, d]
# 准备标签
labels = ['55kg']
# 颜色
colors = ['purple', 'red', 'blue', 'yellow']
# 分离
explode = [0, 0.05, 0.1, 0.2]
#绘制饼图
plt.pie(
x=data,#绘制数据
labels=labels,#添加编程语言标签
shadow=True, # 设置阴影效果
explode=explode, # 设置分离程度
colors=colors, #设置自定义填充色
autopct='%.3f%%',#设置百分比的格式,保留3位小数
counterclock= False,#是否为逆时针方向,False表示顺时针方向
)
plt.title('''《青春有你2》参赛选手体重分布''',fontsize = 24)
plt.axis('equal')
参赛选手体重分布饼图:
今天已经是参加百度7日打卡活动的第三天啦!在这里要赞扬的是老师们和助教们的耐心解答,还有在微信群上同学们的互相帮助。可以有这样的一个环境给到大家,同时免费体验飞桨平台的众多技术,真的是非常感谢!简简单单,就可以了解到技术前沿,有一个初体验。对以后的人工智能学习是一个启蒙过程,大家可以去免费体验啦!
其他的咱们群上继续唠叨哈!加油!各位!
飞桨平台官网:https://www.paddlepaddle.org.cn/