首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Python数据分析入门日记Day19:数据绘图库Matplotlib:散点图

Python数据分析入门日记Day19

——数据绘图库Matplotlib:散点图

祝我的所有读者新年快乐!

今天学习了散点图,众所周知,散点图能够反映变量两两之间的相关性,在绘制散点图之前,还是先来搞清楚Matplotlib中绘制散点图的函数scatter()里的一些参数。

1、scatter()函数

其中,x和y为用于绘制散点图的数据;s指定散点图中点的大小,默认值为20;c可以用于设定散点图中点的颜色,默认为蓝色;marker用于设定点的形状,默认为圆圈”o”;当用于绘制散点图的数据为浮点型数组时,cmap这个参数才起作用,也是用于进行颜色设定;norm用来表示数组的量度;vmin和vmax对量度进行设置,用途跟norm类似;alpha用于设置透明度;linewidth设置散点图边界的粗细;edgecolors用于设置散点图边界的粗细。

2、一般散点图的绘制

案例:腰围和体重的关系

今天的案例采用之前学习SPSS时用于回归分析的腰围和体重数据。首先,导入所要用到的库,选取绘图风格,进行中文乱码和坐标轴负号处理,并读取数据,查看前五行。(这些都是每次绘图前必不可少的工序,只要记得套用就可以啦)

更改scatter()函数中的参数,为绘制的散点图进行DIY:

设置标题和坐标轴标签,对数据进行说明,可以便于他人读懂散点图所传达的信息。

最后,千万不要忘记用plt.show()函数展示绘图结果:

从腰围和体重关系的散点图中,可以很明显地看出,腰围和体重之间存在正相关关系。

完整代码:

3、组散点图的绘制

案例:工资收入的影响因素

使用之前学习SPSS时用到的工资收入的影响因素数据(其中,数据集中sr表示工资收入,gl表示工龄,单位:月,性别Sex一栏F表示女性,M表示男性)。

为在散点图中区分不同性别的职工,为其表示的散点设定不同颜色后,再对散点图进行绘制。编写一个for循环,提取不同性别的职工工资收入和工龄的信息。

添加散点图中的轴标签和标题,并在左上方放置图例。

最终绘制出的散点图如下:

从工资收入的影响因素散点图中可以看出,该公司女性职工的工龄明显高于男性;若工龄相同,男性职工的工资会高于女性职工;当获得相同报酬时,女性职工的工龄大于男性。

4、气泡图的绘制

案例:腰围和体重关系

利用腰围、体重、体脂的数据,完成气泡图绘制的学习。首先,导入所需库(numpy、pandas、matplotlib),读取数据并查看数据的前五行。

利用scatter()函数绘制气泡图。

设置x轴和y轴的刻度范围,添加标签和气泡图标题,别忘了用plt.show()显示图。

最终绘制出的气泡图如下:

腰围和体重呈现的关系依旧是正相关,图中气泡大小表示体脂,很明显体重越轻、腰围越小的人体脂低。另外还可以看出,即使具有相同的腰围和体重,但体脂还是有所不同。

完整代码:

5、散点图+线性回归

在很多数据分析报告中,我们常见散点图和线性回归同时出现,可以更全面地反映变量间的相互关系。调用线性回归模型需要从sklearn库中导入。

依旧用腰围和体重数据完成这一块内容的学习。首先,读取数据并完成对散点图的一些基本设置:

开始建模:

完成对绘制图的标题、坐标轴标签等一系列设置:

最终的散点+线性回归图如下:

完整代码:

今天关于散点图绘制的学习就告一段落啦,特别是气泡图能够反映更多变量信息,我们要更熟练和广泛地运用。

最后,老样子,如果有什么好的意见和建议欢迎留言指点~明天是我的学习笔记陪伴大家的最后一天啦!感谢一直以来支持我的你们,也感谢大过年依旧勤奋的我自己,爱你们哦!

Ovaltine

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20190208G04AKS00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券