【飞浆paddlepaddle】python—matplotlib库实现数据可视化---【百度7日打卡训练营day_3】

Odetta ·
更新时间:2024-11-13
· 602 次阅读

文章目录matplotlib—柱形图bar()和饼图pie()绘制地区分布柱形图绘制体重柱形图绘制体重分布饼图总结 matplotlib—柱形图bar()和饼图pie()

从昨天在百度百科爬取到的《青春有你2》参赛选手的数据,对选手的地区,体重等信息进行数据可视化。
在这里插入图片描述

部分数据展示(JSON格式):
在这里插入图片描述 绘制地区分布柱形图

话不多说,直接上代码。

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)

参赛选手体重分布柱形图:
在这里插入图片描述

绘制体重分布饼图 想要绘制指定体重范围内的饼图,首先需要统计出 [ ‘55] 各个范围内的选手个数。这里利用 Series 的掩码提取进行范围数据的选取,然后对指定范围的数据个数进行累计求和,得出指定体重范围内的选手数量(至于还有其他更方便快捷的数据提取方法,希望大家可以继续讨论交流下)。详见下面代码: 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/


作者:L_COMH



paddlepaddle 训练 数据 数据可视化 可视化 matplotlib Python

需要 登录 后方可回复, 如果你还没有账号请 注册新账号