前言
通过对本书的学习,读者可以根据自身的实际项目和任务需求,同时结合在matplotlib实用案例中介绍的应用方向和实现方法,灵活地应用Python数据可视化的实用技能。具体而言,这些应用方向主要包括图形、元素、交互、探索和拓展。在这些应用方向中,又从不同方面和角度深入讲解了每个应用方向的实用案例,使读者对每个应用方向的实现方法都有一个相对系统的掌握,从而帮助读者建立matplotlib的知识体系、拓宽matplotlib的应用视野和掌握matplotlib的操作要领,搭建起一条立体式的Python数据可视化的精进之路。
本书主要内容
第1篇:图形(第1~3章)。首先讲解向多边形和交叉曲线等几何图形里填充颜色的实现方法;其次讲解使用模块patches绘制几何图形的实现方法,这些几何图形包括圆、椭圆、矩形、圆弧、楔形等;最后讲解组合展示统计图形的实现方法,包括判别分析示意图、时间序列图、概率密度曲线等。
第2篇:元素(第4~6 章)。主要讲解图形组成元素的设置方法,包括文本内容、计量单位、刻度线、刻度标签和轴脊等,具体内容包括设置文本内容的样式和布局,调整计量单位和计量方法,调整刻度线和刻度标签,以及轴脊的展示效果。
第3篇:交互(第7~9章)。主要讲解具有交互效果的图形的实现方法,包括绘制动态图形(动画)的方法,以及实现GUI效果和事件处理效果的方法。
第4篇:探索(第10~13章)。主要讲解从外部导入图像加载到绘图区域的实现方法,绘制3D图形和地图的方法,以及结合前面章节介绍的应用方向,讲解综合交叉的应用场景。
第5篇:拓展(第14、15章)。主要讲解使用LaTeX和matplotlib自带的TeX功能渲染文本内容的方法,以及使用matplotlib书写数学表达式的方法和技巧。
本书特色
在《Python之禅》(The Zen of Python)中,有一句话是“Now is better than never”,强调实践是掌握一门语言的不二法则。实践不仅是学习外语的必由之路,也是掌握技能的关键环节。因此,在本书的编写过程中,将实践作为中心内容来组织素材和编排章节。这样,在内容的选择上,使用大量的matplotlib实用案例,讲解Python数据可视化在各个方向上的应用和实现方法。通过学习这些实用案例,读者可以更好地掌握Python数据可视化的实用技能,拓展Python数据可视化的应用视野。与此同时,读者可以拓展对matplotlib的理解深度和广度,以及更好地掌握matplotlib的语法精要和操作要领,从而全面提高对matplotlib的掌握程度和加深对matplotlib的理解程度。
阅读建议
本书的示例代码都比较简单易懂,而且代码量都很适中,只有非常少的示例代码的代码量比较大,相信读者的学习热情和学习态度可以极大地帮助读者度过相对枯燥的编辑脚本的阶段。事物总是相对的,虽然编辑脚本的过程略显枯燥,但是也可以培养关注细节的做事态度。希望读者可以带着好奇心,独立地敲入完整的代码,真正动手实践书中讲过的每个示例,探索每个示例,钻研每个示例,真正实现“授之以渔”的学习效果。而且,通过动手实践的学习方式,既可以更好地掌握matplotlib的使用方法,也可以更好地理解matplotlib的内容精华。正如谚语所言,“眼过千遍,不如手过一遍”,从而更好地平衡matplotlib在实践和理论之间的比例关系,也就是说,既侧重实用案例的讲解,又兼顾理论内容的介绍。本书列举了大量的matplotlib实用案例,涵盖Python数据可视化的各个应用方向。因此,本书既可以作为简要而全面的matplotlib参考资料,也可以作为Python数据可视化的实用工具书。
本书的示例代码都是基于Python 3.6、basemap 1.2.0、imageio 2.4.1、matplotlib 1.5.3、NumPy 1.15.4、Pillow 5.3.0、SciPy 1.1.0 和squarify 0.3.0 实现的,同时也考虑了使用Python 2.x 的读者。无论是在Python 2.x还是在Python 3.x的环境下,对于使用matplotlib 2.0.0及以上版本的读者而言,需要将示例代码中的属性 axis_bgcolor 和 axisbg 变更为 facecolor,将实例方法 set_axis_bgcolor()变更为set_facecolor()。对于使用matplotlib 2.0.0以下版本的读者而言,无论是在Python 2.x还是在Python 3.x的环境下,示例代码都不需要做任何变更。在“内容补充”部分,对于“代码实现”部分的示例代码而言,会给出需要做示例代码变更的修改建议和修改方法,或者给出一些具有启发意义的实用操作指南。
读者对象
如果读者了解Python的一些基础编程知识,则会非常有利于学习matplotlib的实用案例。但是,如果读者不了解Python编程知识,那么也不会对学习matplotlib造成太大的困难。因为书中的Python示例代码都是使用非常基础的语法知识进行编写的,而且对示例代码中的难点语句和重点语句都会进行详细讲解,因此,示例代码的可读程度非常高。与此同时,对于在相关章节中出现的统计学概念和数学概念,也都会详细地讲解其计算原理和计算方法。当然,这些概念都是浅显易懂的。这样,有利于读者将宝贵的时间和精力放在matplotlib实用案例的学习上面。
从matplotlib的学习阶段来讲,读者最好具备matplotlib基础知识,这样可以更快地学习和实践matplotlib实用案例。从matplotlib的使用目的来讲,读者可以将阅读重点放在Python数据可视化的应用场景上面,掌握Python数据可视化的不同应用方向的实现思路和实现方法。因此,读者既可以是数据分析师、大数据工程师、机器学习工程师、数据挖掘工程师、人工智能专家、运维工程师、系统和性能优化工程师、软件测试工程师,也可以是用户体验设计师、交互设计师或数据产品经理,以及对Python数据可视化感兴趣的各个行业的从业者。
联系与反馈
由于本人的学识和能力有限,书中存在疏漏之处在所难免,欢迎广大读者针对书中的错误、阅读体会和建议等给予反馈。如果读者对matplotlib也有自己的见解和研究兴趣,欢迎与我联系。请将反馈信息发送到电子邮箱pdmp100@163.com。
致谢
谈到本书的出版,深受我父亲的影响,主要是他对木工技艺的执着追求和不断探索,让我明白了精益求精的深刻内涵。由此,我在matplotlib实践的基础上继续探索Python数据可视化的高级技能,以求实现matplotlib技术精进的提升目标。
在写作本书的过程中,我得到了很多人的帮助和支持。首先,要感谢我朴实、善良的父母,他们一如既往地支持我的事业。其次,在本书的编辑和出版过程中,得到了电子工业出版社石倩编辑的耐心指导和帮助。最后,要感谢我的妻子一直以来对我事业的理解和支持,没有她的默默陪伴,就不会有书稿的完成。
时光飞逝,努力成为更好的自己!
作者
轻松注册成为博文视点社区用户(www.broadview.com.cn),扫码直达本书页面。
● 下载资源:本书如提供示例代码及资源文件,均可在 下载资源 处下载。
● 提交勘误:您对书中内容的修改意见可在 提交勘误 处提交,若被采纳,将获赠博文视点社区积分(在您购买电子书时,积分可用来抵扣相应金额)。
● 交流互动:在页面下方 读者评论 处留下您的疑问或观点,与我们和其他读者一同学习交流。
页面入口:http://www.broadview.com.cn/36218