2021.07.04 技術シェア
【技术浅谈】matplotlib数据可视化——散点图,直方图,范围预测图

前言


前两章我们总结了pandas中对dataframe的一些常用操作,包括对数据的添加、删除、选取、合并和比较,大家是不是感觉已经对数据表的操作了如指掌了呢 (*^o^)人(^o^*) !


 


接下来我们来一起了解一下python中的数据可视化库——matplotlib


Matplotlib 可能是 Python 2D-绘图领域使用最广泛的套件。它能让使用者很轻松地将数据图形化,并且提供多样化的输出格式。它可以直接引用我们分析完成的数据进行画图,简洁清晰地将数据表现出来。


本文将介绍matplotlib数据可视化中比较常见的图像——散点图,直方图,范围预测图的画法。


 


图片


 

散点图


散点图的画法需要使用matplotlib.pyplot.scatter()函数,那么scatter()函数的常用参数有哪些呢?


Ø  x, y:array_like,输入数据;


Ø  s:标量或array_like,控制点的大小;


Ø  c:可以是单个颜色格式的字符串或RGB;


Ø  marker:控制点的式样,具体可参考matplotlib.markers;


Ø  alpha: 透明度


 


以上为散点图中常用的一些参数,下面一起来看看散点图的例子吧!


 


图片


 

直方图


一般直方图可以用来画数据的频率分布直方图,即统计哪一块数据所占比例或者出现次数较高,哪一块出现概率低,这里需要要用到hist()函数或使用value_counts()计数后画图。


图片


Ø  x:每个柱子分布的数据,对应x轴;


Ø  bins:柱子的个数;


Ø  normed:每个条状图的占比例比,默认为1;


Ø  color:条状图的颜色;


Ø  alpha: 透明度;


Ø  histtype: 直方图类型,‘bar’, ‘barstacked’, ‘step’, ‘stepfilled’


 


以上为直方图中常用的一些参数,下面一起来看看如何用hist()函数画柱状图吧!


图片


这里我们使用hist()函数非常简洁的画出了直方图,但是如果我们想要自己定义频次的统计范围呢,即自定义横坐标。这里还有另一种画法是通过value_counts()函数统计数据集中各个范围的频次,再使用plot()函数画出。


图片


通过使用value_counts()函数计数,我们就可以根据需要来画出范围自定义的频率分布直方图了。


 

范围预测图


大多数情况下我们对数据进行预测时要求输出0或1,或者是分类(classification);但是有时候我们要求预测一个范围而不是具体的值,例如我们已知过去某商家每天在广告上投入的钱和广告的表示回数的数据(投入的钱越多,广告的表示回数越多)。现在商家想预测今后投入一定钱后,大概能获得多少次的广告表示回数。下面一起来看看代码吧!


图片


图片


本章我们总结了数据可视化中散点图,频率分布直方图和范围预测可视化的画法。通过matplotlib,我们可以简洁优雅的将我们数据分析的结果呈现出来。


这里只介绍了matplotlib中的一些基本用法,对于其他类型的图,大家可以参考以下寻找合适自己分析数据的图和画法。


matplotlib galler,


https://matplotlib.org/gallery/index.html 


 


图片