暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

《Python数据可视化之matplotlib实践》读书笔记

凌云网络实验室 2020-06-04
467

    数据可视化环节是大数据处理的重要一环,今天给大家带来的是一本关于数据可视化的书——《Python数据可视化之matplotlib实践》。



简介


    《Python数据可视化之matplotlib实践》借助matplotlib讲解开展Python数据可视化实践所需要掌握的关键知识和技能,主要由matplotlib入门、精进、演练和拓展四部分组成。Matplotlib的官方网站matplotib.org是学习函数、查看函数用法的重要途径之一,但我们不一定每次都能从案例里找到现成代码,想要系统地学会如何使用Matplotlib以及它的基本语法,这本书不失为一种选择。这本书分门别类的给出很多示例,方便速查,比起看官方英文文档轻松很多。

主要内容

本书分为四篇:

    第1篇使用matplotib库绘制基本统计图形,讲解matplotlib库的图表组成元素的概念和实现方法,介绍细化matploblib库的图形内容的基本操作方法。

    第2篇设置坐标轴的刻度样式,添加不同形式的注解,划分绘图区域,设置共享绘图区域的坐标轴。

    第3篇主要围绕数据可视化的主要展示窗口- -坐标轴, 来探讨相关话题,包括设置坐标轴的位置、控制坐标轴刻度显示的方法及移动坐标轴位置等话题。

    第4篇从通识和泛化的角度,探讨进行Python数据可视化需要使用的知识和技术,包括修改matplotlib的配置,设置文本属性,使用不同形式的配色模式,以及展示和保存图形。


笔记

此处借第三章讲解一下图表绘制:

(一)前期知识

①Matplotlib三个层次结构

    matplotlib包括三个层次: 台层、艺术家层和脚本层。后台层:负责用户交互,保证在不同操作系统,平台,环境下软件包均可以正常运行,并将最后的图形正确的显示出来。艺术家层:产生画图所需的所有元素,并将它们组合起来。脚本层:负责协调后台层和艺术家层,让能用简单的编程语言与其他两层交流。它们在逻辑上是堆叠的关系,如下图所示:

②数据类型

    传统数据可大致分成两类:数值型和类别型。新型数据的分类多种多样,无法给出统一的指标, 分类包括但不局限于空间数据( 例如GPS坐标),关系数据(例如人脉关系),文本数据(例如搜索记录)等。


(二)图表绘制

1.加载数据

    首先需要加载数据。此例数据为一个关于美国房价数据集,存储在us_ house_ _price.csv文件中,使用Pandas包导入该csv文件。

2.绘制图形

①饼状图函数pie(students,explode=explode,

labels=labels,autopct= %3.1f%%",

startangle=45,shadow=True, colors= colors)中参数含义

    饼图可以很好的看出各个部分占总数的百分比。饼图的对象是一个离散型或类别型数据。这里使用房屋状况(condition) 来做饼图的可视化。同样的,需要手动提取表格中房屋状况的特征。可以通过以下代码实现:

    可以理解为房屋状况为3的房子有620间,状况为4的有277间。注意这里的两个列表实际上是一对,数据的对应顺序不可以换。绘制饼图使用pie()函数。这个函数只有一个必要参数,那就是x。

效果如下:


②箱线图函数

plt.boxplot(testList,whis=whis,

widths=width,sym="o",labels=labels,

patch artist= True)中参数的含义:

    箱线图用来观察连续特征的分布状况,通过箱线图,除了能够判断数据的离散程度,还可以直观地识别数据中的离群值。最简单的箱线图只包含一个连续型特征, 例如价格(price) 。复杂一点的箱线图包括多个连续型特征。plt. boxplot()函数可选参数labels可用来更改x轴坐标。这里使用房屋价格,先绘制一个简单的箱线图,如下:

    将居住面积(sqft_ living) 和土地面积(sqft_ lot) 绘制在同一个箱线图里面。首先从数据框中提取出这两列。然后把这两个array放在一个列表里面就可以直接调用plt.boxplot() 函数画图。另外,可以通过设置positions来调整这两个箱线图的位置。showfliers参数可以设置是否显示离群值。vert参数可用来调整箱线图方向。如下:

    以下是对于几个常用画图函数的总结以及对应函数里面的三个可选参数和该函数的官方文档:

    好了,今天的分享就到这里,希望屏幕前的你有所收获❤

编辑:袁彤彤

审核:马淑芳

扫码关注我们👉


文章转载自凌云网络实验室,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论