提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
文章目录
前言
一、Pandas读取数据
二、处理数据
三、使用Matplotlib绘图
1.柱状图
2.绘制散点图
3.绘制散点图和折线图
总结
前言
前面学习了Numpy、matplotlib、pandas还没有进行一些练习和训练,这里分享我对于数据可视化的一些练习 此次代码和数据我会打包上传,感兴趣的uu可以去下载
提示:此处所以编译均在jupyter notebook执行(jupyter 下载可以看我前面博客)
一、Pandas读取数据
Pandas:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。
import pandas as pddata=pd.read_csv("FIFA World Cup.csv",encoding="ansi")data
部分结果
二、处理数据
数据都是英文,不方便处理时观看,先将英文转为中文
代码如下(示例):
此处采用的是复制后删除原数据
data['平均出售率']=data['Averageattendance']data['最高出席人数']=data['highest attendence of Number']data['场地最高出席次数']=data['highest attendence of Venue']data['最高比赛上座率']=data['highest attendence of Game(s)']data.pop('Venues/Cities')data.pop('highest attendence of Number')data.pop('highest attendence of Venue')data.pop('highest attendence of Game(s)')data.pop('Averageattendance')data.pop('Totalattendance 鈥?Matches')data.pop('Unnamed: 8')data
结果
Hosts是举办方,此处不使用,也就保留了
三、使用Matplotlib绘图
1.柱状图
from matplotlib import pyplot as pltplt.rcParams["font.sans-serif"]=["SimHei"] #设置字体plt.rcParams["axes.unicode_minus"]=False #该语句解决图像中的“-”负号的乱码问题fig=plt.figure()ax=fig.add_axes([0,0,1,1])ax.bar(data['Year']-1900,data['最高出席人数'])ax.set_title("每届世界杯单场最高出席人数")ax.set_xlabel('年份')ax.set_ylabel('人数')ax.set_xticks(data['Year']-1900)fig.show()
运行结果
此处将1900年为起点(0)开始
2.绘制散点图
from matplotlib import pyplot as pltplt.rcParams["font.sans-serif"]=["SimHei"] #设置字体plt.rcParams["axes.unicode_minus"]=False #该语句解决图像中的“-”负号的乱码问题fig=plt.figure()ax=fig.add_axes([0,0,1.5,1])ax.scatter(data['Year'],data['场地最高出席次数']) #绘制散点图#ax.scatter(data['Year'],data['平均出售率'],color='g')ax.set_title("每届世界杯票数平均出售率")ax.set_xlabel('年份')ax.set_ylabel('平均出售率')ax.set_xticks(data['Year'])fig.show()
运行结果:
3.绘制散点图和折线图
from matplotlib import pyplot as pltplt.rcParams["font.sans-serif"]=["SimHei"] #设置字体plt.rcParams["axes.unicode_minus"]=False #该语句解决图像中的“-”负号的乱码问题fig=plt.figure()ax=fig.add_axes([0,0,1.5,1])ax.plot(data['Year'],data['平均出售率'],color='g') #绘制折线图ax.scatter(data['Year'],data['平均出售率']) #绘制散点图ax.set_title("每届世界杯票数平均出售率")ax.set_xlabel('年份')ax.set_ylabel('平均出售率')ax.set_xticks(data['Year'])fig.show()
运行结果:
同时绘制散点图+折线图,更直观看出图像数据
总结
此次例子是小型数据而已,面对大量数据和小量数据处理方式不同,对于小量数据更希望直观看出数据,对于大量数据更想看出规律
如果觉得《数据可视化|世界杯球迷统计》对你有帮助,请点赞、收藏,并留下你的观点哦!