新書推薦:
《
佛山华家班粤菜传承 华家班59位大厨 102道粤菜 图文并茂 菜式制作视频 粤菜故事技法 佛山传统文化 广东科技
》
售價:HK$
227.7
《
武人琴音(十周年纪念版 逝去的武林系列收官之作 形意拳一门三代:尚云祥、韩伯言、韩瑜的人生故事 凸显百年武人命运)
》
售價:HK$
44.9
《
剑桥斯堪的纳维亚戏剧史(剑桥世界戏剧史译丛)
》
售價:HK$
158.7
《
禅心与箭术:过松弛而有力的生活(乔布斯精神导师、世界禅者——铃木大拙荐)
》
售價:HK$
66.1
《
先进电磁屏蔽材料——基础、性能与应用
》
售價:HK$
227.7
《
可转债投资实战
》
售價:HK$
102.4
《
王氏之死(新版,史景迁成名作)
》
售價:HK$
56.4
《
敢为天下先:三年建成港科大
》
售價:HK$
79.4
|
編輯推薦: |
全面讲解使用matplotlib绘制各种图表的方法,并灵活设置图形
采用大量案例,使读者可以根据自身需求灵活使用matplotlib中的函数、面向对象方法和绘图语句
|
內容簡介: |
本书借助Matplotlib讲解开展Python数据可视化实践所需要掌握的关键知识和技能。本书主要由Matplotlib入门、精进、演练和拓展四部分组成。同时,为方便读者对书中的内容进行有效实践,相关章节都会配以大量典型的综合案例。书中使用的代码都是Python编程知识里的基础内容,有利于读者将时间和精力放在数据可视化的实践本身上。因此,本书适合对Python数据可视化有兴趣的各行业和领域的有识之士。
|
關於作者: |
研究生学习统计学,发表多篇统计学的相关论文,毕业之后一直做数据分析师一职,在支付行业、O2O行业和在线教育行业工作过,具有丰富的实践经验.
|
目錄:
|
目录
第1篇入门
第1章使用函数绘制matplotlib的图表组成元素2
1.1 绘制matplotlib图表组成元素的主要函数2
1.2 准备数据3
1.3 绘制matplotlib图表组成元素的函数用法4
1.3.1函数plot展现变量的趋势变化4
1.3.2函数scatter寻找变量之间的关系5
1.3.3函数xlim设置x轴的数值显示范围6
1.3.4函数xlabel设置x轴的标签文本7
1.3.5函数grid绘制刻度线的网格线8
1.3.6函数axhline绘制平行于x轴的水平参考线9
1.3.7函数axvspan绘制垂直于x轴的参考区域11
1.3.8函数annotate添加图形内容细节的指向型注释文本12
1.3.9函数text添加图形内容细节的无指向型注释文本13
1.3.10函数title添加图形内容的标题15
1.3.11函数legend标示不同图形的文本标签图例16
1.4 函数组合应用17
第2章使用统计函数绘制简单图形20
2.1 函数bar用于绘制柱状图20
2.2 函数barh用于绘制条形图22
2.3 函数hist用于绘制直方图23
2.4 函数pie用于绘制饼图25
2.5 函数polar用于绘制极线图26
2.6 函数scatter用于绘制气泡图27
2.7 函数stem用于绘制棉棒图29
2.8 函数boxplot用于绘制箱线图30
2.9 函数errorbar用于绘制误差棒图31
第3章绘制统计图形33
3.1 柱状图33
3.1.1应用场景定性数据的分布展示33
3.1.2绘制原理33
3.2 条形图35
3.3 堆积图37
3.3.1堆积柱状图37
3.3.2堆积条形图38
3.4 分块图39
3.4.1多数据并列柱状图40
3.4.2多数据平行条形图41
3.5 参数探索42
3.6 堆积折线图、间断条形图和阶梯图44
3.6.1用函数stackplot绘制堆积折线图44
3.6.2用函数broken_barh 绘制间断条形图45
3.6.3用函数step绘制阶梯图47
3.7 直方图48
3.7.1应用场景定量数据的分布展示48
3.7.2绘制原理49
3.7.3直方图和柱状图的关系50
3.7.4堆积直方图51
3.7.5直方图的不同形状53
3.8 饼图55
3.8.1应用场景定性数据的比例展示55
3.8.2绘制原理55
3.8.3延伸阅读非分裂式饼图57
3.8.4案例绘制内嵌环形饼图58
3.9 箱线图60
3.9.1应用场景多组定量数据的分布比较60
3.9.2绘制原理61
3.9.3延伸阅读箱体、箱须、离群值的含义和计算方法63
3.9.4案例1水平方向的箱线图65
3.9.5案例2不绘制离群值的水平放置的箱线图66
3.10 误差棒图67
3.10.1应用场景定量数据的误差范围67
3.10.2绘制原理68
3.10.3案例1带误差棒的柱状图69
3.10.4案例2带误差棒的条形图71
3.10.5案例3带误差棒的多数据并列柱状图72
3.10.6案例4带误差棒的堆积柱状图74
第4章完善统计图形77
4.1 添加图例和标题77
4.1.1图例和标题的设置方法77
4.1.2案例1图例的展示样式的调整79
4.1.3案例2标题的展示样式的调整80
4.1.4案例3带图例的饼图82
4.2 调整刻度范围和刻度标签83
4.2.1调整刻度范围和刻度标签的方法84
4.2.2延伸阅读函数subplot85
4.2.3案例逆序设置坐标轴刻度标签86
4.3 向统计图形添加表格87
第2篇精进
第5章统计图形绘制进阶:图形样式92
5.1 设置坐标轴的刻度样式92
5.1.1刻度定位器和刻度格式器的使用方法92
5.1.2调用模块pyplot中的函数实现刻度样式的设置95
5.1.3案例1刻度标签和刻度线样式的定制化95
5.1.4案例2货币和时间序列样式的刻度标签96
5.2 添加有指示注解和无指示注解98
5.2.1有指示注解和无指示注解的添加方法98
5.2.2案例1圆角文本框的设置100
5.2.3案例2文本的水印效果101
5.2.4案例3圆角线框的有弧度指示的注解102
5.2.5案例4有箭头指示的趋势线104
5.2.6案例5桑基图105
5.3 实现标题和坐标轴标签的投影效果107
5.3.1实现标题和坐标轴标签的投影效果的操作方法107
5.3.2案例给坐标轴标签添加文本框109
第6章划分画布的主要函数111
6.1 函数subplot:绘制网格区域中的几何形状相同的子区布局111
6.1.1函数subplot的使用方法112
6.1.2案例1在极坐标轴上绘制折线图113
6.1.3案例2在极坐标轴上绘制散点图114
6.1.4案例3在非等分画布的绘图区域上实现图形展示115
6.2 函数subplot2grid:让子区跨越固定的网格布局116
6.2.1函数subplot2grid的使用方法116
6.2.2延伸阅读模块gridspec中的类GridSpec的使用方法118
6.3 函数subplots:创建一张画布带有多个子区的绘图模式120
6.3.1案例1创建一张画布和一个子区的绘图模式120
6.3.2案例2创建一张画布和两个子区的绘图模式122
6.3.3案例3多种统计图形的组合展示124
第7章共享绘图区域的坐标轴128
7.1 共享单一绘图区域的坐标轴128
7.2 共享不同子区绘图区域的坐标轴130
7.2.1设置方法130
7.2.2案例将共享坐标轴的子区之间的空隙去掉135
7.3 共享个别子区绘图区域的坐标轴136
7.3.1设置方法136
7.3.2延伸阅读用函数autoscale调整坐标轴范围138
第3篇演练
第8章坐标轴高阶应用142
8.1 设置坐标轴的位置和展示形式142
8.1.1案例1向画布中任意位置添加任意数量的坐标轴142
8.1.2案例2调整已经确定的坐标轴的显示、隐藏与刻度范围等问题144
8.1.3延伸阅读使用函数axis绘制坐标轴145
8.2 使用两种方法控制坐标轴刻度的显示146
8.2.1方法1调用Axes.set_xticks和Axes.set_yticks实例方法146
8.2.2方法2调用函数setp147
8.2.3案例1棉棒图的定制化展示149
8.2.4案例2坐标轴的样式和位置的定制化展示150
8.3 控制坐标轴的显示152
8.4 移动坐标轴的位置154
第9章设置线条类型和标记类型的显示样式158
9.1 不同调用签名形式的字典使用方法158
9.1.1方法1调用签名中的关键字参数的设置形式fontdict=font158
9.1.2方法2关键字参数的设置形式**font160
9.2 线条类型的显示样式设置方法161
9.3 标记类型的显示样式设置方法162
9.3.1方法1单一字符模式162
9.3.2方法2mathtext模式164
9.4 延伸阅读166
9.4.1案例1破折号线条样式的不同展现形式的设置方法166
9.4.2案例2标记填充样式的设置方法168
9.4.3案例3函数plot的调用签名的设置方法170
第4篇拓展
第10章matplotlib的配置174
10.1 修改代码层面的matplotlib的配置174
10.1.1方法1调用函数matplotlib.rc175
10.1.2方法2调用属性字典matplotlib.rcParams175
10.2 修改项目层面的matplotlib配置176
10.2.1配置文件所在路径176
10.2.2设置方法177
第11章文本属性设置179
11.1 设置字体属性和文本属性179
11.1.1方法1改变配置文件matplotlibrc的字体属性值和文本属性值181
11.1.2方法2通过属性字典rcParams调整字体属性值和文本属性值182
11.1.3方法3通过设置函数的关键字参数183
11.2 延伸阅读手动添加字体184
11.3 案例字体主要属性的可视化展示185
第12章颜色使用188
12.1 使用颜色参数和颜色映射表188
12.1.1颜色参数的使用188
12.1.2颜色映射表的使用190
12.2 综合案例193
12.2.1案例1模拟图的颜色使用模式193
12.2.2案例2散点图的颜色使用模式194
12.2.3案例3极区图的颜色使用模式195
12.2.4案例4等高线图的颜色使用模式197
12.2.5案例5颜色标尺的颜色使用模式198
第13章输出图形的展示和保存200
13.1 运行命令行展示输出图形200
13.1.1方法1Python shell模式200
13.1.2方法2IPython shell模式203
13.2 保存输出图形205
13.2.1方法1使用保存按钮进行存储205
13.2.2方法2通过执行代码语句进行保存207
附录APython基础知识208
附录BNumPy基础知识213
附录Cmatplotlib、NumPy和IPython的安装方法217
|
內容試閱:
|
前 言
通过本书的学习,读者可以根据自身需求灵活使用matplotlib中的绘图语句,设置图表组成元素,以及进行泛化性的图形设置。值得注意的是,matplotlib绘图库的操作是通过API实现的,一种操作方法是类似MATLAB的函数接口的API;另一种操作方法是面向对象的API。这两种API可以并行使用,不过函数接口的API的易用性明显好于面向对象的API。所以,本书入门篇主要使用函数接口的API,精进和演练篇主要使用面向对象的API。
本书主要内容
第1篇 使用matplotlib库绘制基本统计图形,讲解matplotlib库的图表组成元素的概念和实现方法,介绍细化matploblib库的图形内容的基本操作方法。
第2篇 设置坐标轴的刻度样式,添加不同形式的注解,划分绘图区域,设置共享绘图区域的坐标轴。
第3篇 主要围绕数据可视化的主要展示窗口坐标轴,来探讨相关话题,包括设置坐标轴的位置、控制坐标轴刻度显示的方法及移动坐标轴位置等话题。
第4篇 从通识和泛化的角度,探讨进行Python数据可视化需要使用的知识和技术,包括修改matplotlib的配置,设置文本属性,使用不同形式的配色模式,以及展示和保存图形。
读者对象
如果读者了解一些Python的基础编程知识,那是最好不过的事情了,但是如果不了解也没有关系,因为书中的Python代码都是非常易读的,而且重点代码也都会逐一细致地进行解释。与此同时,书中在必要的章节会介绍统计学的相关概念和计算方法,方便读者将宝贵的时间和精力放在数据可视化的实践本身。
你可以是第一次接触数据可视化的人员,甚至是没有任何MATLAB或类似使用统计分析软件的应用经验的人员;你也可以是对Python有基本了解的运营人员、数据分析师、大数据工程师、机器学习工程师、数据挖掘工程师,甚至是人工智能专家、运维工程师、软件测试人员,以及对Python数据可视化有兴趣的各行业的读者。
本书特色
本书在列举大量Python数据可视化案例的过程中,将重点放在Python数据可视化思路、Python数据可视化技术和方法的探讨上,使读者通过阅读本书,能够在自己的实际工作和学习中灵活应用,并解决现实的Python数据可视化问题,而不是拘泥于书中的案例和方法,从而实现授之以渔的学习效果。
阅读建议
本书的实例代码都比较简单易懂,而且代码量很小,因而我没有将代码放在GitHub或相关可以下载实例代码的平台上,目的就是希望读者可以独立敲入完整代码,真正动手实践书中讲过的每一个实例,探索每一个实例,通过动手实践的方式,既能掌握Python数据可视化的编程知识,又能领会matplotlib的精髓,实现在做中学、在学中练的目标。正像苏轼的诗句中所言的竹外桃花三两枝,春江水暖鸭先知。之所以给读者这样的建议,目的就是让读者主动探索和掌握绘制图表的实现方法。
本书的示例代码都是基于Python 2.7、matplotlib 1.5.3和NumPy 1.13.1实现的。在书中的附录部分会详细讲解Python 2.7、matplotlib 1.5.3和NumPy 1.13.1的安装方法。
联系与反馈
由于本人的学识和能力有限,书中存在纰漏之处在所难免,欢迎广大读者针对书中的错误、阅读体会和建议等给予反馈。如果你对matplotlib也有自己的见解和研究兴趣,欢迎与我联系。请将反馈信息发送到电子邮箱pdmp100@163.com中。
致谢
谈到本书的出版,还要从读研究生时讲起,那时候我就一直有写书的想法,但当时由于阅历和技能都很不成熟,就暂时放下了。毕业之后,我一直从事数据分析、机器学习方面的工作,随着工作经验的积累,也逐渐找到自己的研究兴趣。机缘巧合的是,这段时间恰好有精力可以完成自己的这个梦想。
在写作本书的过程中,我得到了很多人的帮助和支持。首先,要感谢我的父母,在求学和工作的过程中一直做我的坚强后盾,我也一直自豪于生活在生产性的简朴蜂巢中。再有,在本书的编辑过程中,得到电子工业出版社石倩编辑耐心、细致的帮助和指导,让我获益良多。最后,要感谢我的妻子一直以来对我工作的理解和支持,而且也要感谢我的朋友和同事对我的成长所给予的关心和帮助。
不忘初心,坚定前行,时间会给你所想的一切。
|
|