Python數(shù)據(jù)可視化編程實(shí)戰(zhàn) 第2版
定 價(jià):69 元
- 作者:[愛爾蘭] 伊戈?duì)枴っ茁逋咧Z維奇(Igor Milovanovi?) [法]迪米
- 出版時(shí)間:2018/9/1
- ISBN:9787115488428
- 出 版 社:人民郵電出版社
- 中圖法分類:TP311.561
- 頁碼:
- 紙張:膠版紙
- 版次:
- 開本:16開
本書是一本使用Python實(shí)現(xiàn)數(shù)據(jù)可視化編程的實(shí)戰(zhàn)指南,介紹了如何使用Python流行的庫,通過70余種方法創(chuàng)建美觀的數(shù)據(jù)可視化效果。
全書共9章,分別介紹了準(zhǔn)備工作環(huán)境、了解數(shù)據(jù)、繪制并定制化圖表、學(xué)習(xí)更多圖表和定制化、創(chuàng)建3D可視化圖表、用圖像和地圖繪制圖表、使用正確的圖表理解數(shù)據(jù)、更多的matplotlib知識(shí)以及使用Plot.ly進(jìn)行云端可視化。
本書適合那些對(duì)Python編程有一定基礎(chǔ)的開發(fā)人員閱讀,可以幫助讀者從頭開始了解數(shù)據(jù)、數(shù)據(jù)格式、數(shù)據(jù)可視化,并學(xué)會(huì)使用Python可視化數(shù)據(jù)。
本書主要介紹如何通過Python來實(shí)現(xiàn)數(shù)據(jù)可視化。本書包含了一系列實(shí)用的示例,旨在幫助讀者熟悉運(yùn)用Python及其流行的可視化庫和數(shù)據(jù)操作庫,牢固地掌握數(shù)據(jù)可視化的知識(shí)。
本書從安裝和搭建Python數(shù)據(jù)操作和可視化環(huán)境講起,循序漸進(jìn),直到讀者掌握使用Python庫繪制3D動(dòng)畫等技能。另外,本書還講解了如何配置matplotlib及相關(guān)庫,如何在不同的環(huán)境(如文字排版系統(tǒng)或LaTeX)中使用matplotlib,以及如何使用Python創(chuàng)建甘特圖等實(shí)用技能。通過本書,讀者能更好地理解數(shù)據(jù)可視化的概念和技術(shù)。
本書包括以下內(nèi)容:
·搭建工作環(huán)境所需的工具;
·使用標(biāo)準(zhǔn)的Python數(shù)據(jù)處理庫和Pandas庫處理數(shù)據(jù);
·繪制并定制化圖表;
·使用流行的Python數(shù)據(jù)可視化庫;
·使用mplot3d繪制3D圖表;
·使用圖像和地圖繪制圖表;
·使用恰當(dāng)?shù)膱D表描述數(shù)據(jù);
·更多matplotlib的高級(jí)內(nèi)容;
·使用Plot.ly在線分享可視化圖表。
本書特色:
·簡單、易懂且統(tǒng)一的組織形式;
·一系列非常有用的任務(wù)和難題;
·精心組織的說明以便高效地解決問題;
·清晰的操作步驟講解;
·可用于解決實(shí)際問題的方案;
·常見問題的快速解答。
Igor Milovanovi是一個(gè)在Linux系統(tǒng)和軟件工程領(lǐng)域有深厚背景的經(jīng)驗(yàn)豐富的開發(fā)人員。具備創(chuàng)建可擴(kuò)展數(shù)據(jù)驅(qū)動(dòng)分布式富軟件系統(tǒng)的技術(shù)。
身為一個(gè)高性能系統(tǒng)設(shè)計(jì)的布道者,他對(duì)軟件架構(gòu)和軟件開發(fā)方法論有著濃厚的興趣。他一直堅(jiān)持倡導(dǎo)促進(jìn)高質(zhì)量軟件的方法論,如測試驅(qū)動(dòng)開發(fā)、一鍵部署和持續(xù)集成。
他也擁有堅(jiān)實(shí)的產(chǎn)品開發(fā)知識(shí)。擁有領(lǐng)域經(jīng)驗(yàn)知識(shí),并參加過官方培訓(xùn),他能夠在業(yè)務(wù)和開發(fā)人員之間很好地傳遞業(yè)務(wù)知識(shí)和業(yè)務(wù)流程。
Igor非常感謝他的女友允許他把大量的時(shí)間花費(fèi)在本書的寫作上而沒有陪伴她,并在他無休止地談?wù)摫緯鴷r(shí)甘愿做一個(gè)熱心的聽眾。他感謝他的哥哥這個(gè)他一直以來最堅(jiān)強(qiáng)的后盾。他還要感謝他的父母,給予他自由的發(fā)展空間,讓他成為今天的自己。
Dimitry Foures 是一個(gè)擁有應(yīng)用數(shù)學(xué)和理論物理背景的數(shù)據(jù)科學(xué)家。在里昂高等師范學(xué)校(法國)完成他的物理專業(yè)的本科學(xué)業(yè)后,他繼續(xù)在巴黎綜合理工學(xué)院學(xué)習(xí)流體力學(xué),并獲得了一等碩士學(xué)位。他擁有劍橋大學(xué)應(yīng)用數(shù)學(xué)專業(yè)博士學(xué)位。他目前在劍橋的一家智能能源初創(chuàng)公司擔(dān)任數(shù)據(jù)科學(xué)家一職,與劍橋大學(xué)有著非常密切的合作。
Giuseppe Vettigli是一名數(shù)據(jù)科學(xué)家,他在產(chǎn)業(yè)界和學(xué)術(shù)界從事過多年的研究工作。他的工作關(guān)注于從結(jié)構(gòu)化及非結(jié)構(gòu)化數(shù)據(jù)中提取信息進(jìn)行機(jī)器學(xué)習(xí)模型的開發(fā)和應(yīng)用。他經(jīng)常發(fā)表利用Python進(jìn)行科學(xué)計(jì)算和數(shù)據(jù)可視化的文章。
目錄
第 1章 準(zhǔn)備工作環(huán)境 1
1.1 介紹 1
1.2 安裝matplotlib、Numpy和Scipy庫 2
1.2.1 準(zhǔn)備工作 2
1.2.2 操作步驟 3
1.2.3 工作原理 4
1.2.4 補(bǔ)充說明 4
1.3 安裝virtualenv和virtualenvwrapper 4
1.3.1 準(zhǔn)備工作 5
1.3.2 操作步驟 5
1.4 在Mac OS X上安裝matplotlib 7
1.4.1 準(zhǔn)備工作 7
1.4.2 操作步驟 7
1.5 在Windows上安裝matplotlib 8
1.5.1 準(zhǔn)備工作 8
1.5.2 操作步驟 9
1.5.3 補(bǔ)充說明 9
1.6 安裝圖像處理工具:Python圖像庫(PIL) 10
1.6.1 操作步驟 10
1.6.2 安裝過程說明 10
1.6.3 補(bǔ)充說明 10
1.7 安裝requests模塊 11
1.7.1 操作步驟 11
1.7.2 requests使用說明 11
1.8 在代碼中配置matplotlib參數(shù) 12
1.8.1 準(zhǔn)備工作 12
1.8.2 操作步驟 12
1.8.3 代碼解析 13
1.9 為項(xiàng)目設(shè)置matplotlib參數(shù) 13
1.9.1 準(zhǔn)備工作 13
1.9.2 操作步驟 14
1.9.3 配置過程說明 14
1.9.4 補(bǔ)充說明 15
第 2章 了解數(shù)據(jù) 16
2.1 簡介 17
2.2 從CSV文件導(dǎo)入數(shù)據(jù) 17
2.2.1 準(zhǔn)備工作 17
2.2.2 操作步驟 17
2.2.3 工作原理 18
2.2.4 補(bǔ)充說明 19
2.3 從Microsoft Excel文件中導(dǎo)入數(shù)據(jù) 19
2.3.1 準(zhǔn)備工作 20
2.3.2 操作步驟 20
2.3.3 工作原理 21
2.3.4 補(bǔ)充說明 22
2.4 從定寬數(shù)據(jù)文件導(dǎo)入數(shù)據(jù) 22
2.4.1 準(zhǔn)備工作 22
2.4.2 操作步驟 22
2.4.3 工作原理 23
2.5 從制表符分隔的文件中讀取數(shù)據(jù) 24
2.5.1 準(zhǔn)備工作 24
2.5.2 操作步驟 24
2.5.3 工作原理 25
2.5.4 補(bǔ)充說明 25
2.6 從JSON數(shù)據(jù)源導(dǎo)入數(shù)據(jù) 26
2.6.1 準(zhǔn)備工作 26
2.6.2 操作步驟 26
2.6.3 工作原理 27
2.6.4 補(bǔ)充說明 27
2.7 導(dǎo)出數(shù)據(jù)到JSON、CSV和Excel 28
2.7.1 準(zhǔn)備工作 28
2.7.2 操作步驟 28
2.7.3 工作原理 31
2.7.4 補(bǔ)充說明 32
2.8 用Pandas導(dǎo)入和操作數(shù)據(jù) 32
2.8.1 準(zhǔn)備工作 33
2.8.2 操作步驟 33
2.8.3 工作原理 33
2.8.4 補(bǔ)充說明 33
2.9 從數(shù)據(jù)庫導(dǎo)入數(shù)據(jù) 34
2.9.1 準(zhǔn)備工作 34
2.9.2 操作步驟 35
2.9.3 工作原理 37
2.9.4 補(bǔ)充說明 37
2.10 清理異常值 38
2.10.1 準(zhǔn)備工作 38
2.10.2 操作步驟 38
2.10.3 補(bǔ)充說明 43
2.11 讀取大塊數(shù)據(jù)文件 43
2.11.1 操作步驟 43
2.11.2 工作原理 44
2.11.3 補(bǔ)充說明 45
2.12 讀取流數(shù)據(jù)源 45
2.12.1 操作步驟 45
2.12.2 工作原理 46
2.12.3 補(bǔ)充說明 46
2.13 導(dǎo)入圖像數(shù)據(jù)到NumPy數(shù)組 47
2.13.1 準(zhǔn)備工作 47
2.13.2 操作步驟 47
2.13.3 工作原理 50
2.13.4 補(bǔ)充說明 52
2.14 生成可控的隨機(jī)數(shù)據(jù)集合 53
2.14.1 準(zhǔn)備工作 53
2.14.2 操作步驟 54
2.15 真實(shí)數(shù)據(jù)的噪聲平滑處理 60
2.15.1 準(zhǔn)備工作 60
2.15.2 操作步驟 60
2.15.3 工作原理 60
2.15.4 補(bǔ)充說明 65
第3章 繪制并定制化圖表 67
3.1 簡介 68
3.2 定義圖表類型柱狀圖、線形圖和堆積柱狀圖 68
3.2.1 準(zhǔn)備工作 68
3.2.2 操作步驟 68
3.2.3 工作原理 72
3.2.4 補(bǔ)充說明 73
3.3 簡單的正弦圖和余弦圖 74
3.3.1 準(zhǔn)備工作 74
3.3.2 操作步驟 74
3.4 設(shè)置坐標(biāo)軸長度和范圍 77
3.4.1 準(zhǔn)備工作 77
3.4.2 操作步驟 77
3.4.3 工作原理 78
3.4.4 補(bǔ)充說明 79
3.5 設(shè)置圖表的線型、屬性和格式化字符串 80
3.5.1 準(zhǔn)備工作 80
3.5.2 操作步驟 80
3.5.3 工作原理 81
3.6 設(shè)置刻度、刻度標(biāo)簽和網(wǎng)格 84
3.6.1 準(zhǔn)備工作 84
3.6.2 操作步驟 84
3.7 添加圖例和注解 87
3.7.1 準(zhǔn)備工作 87
3.7.2 操作步驟 88
3.7.3 工作原理 89
3.8 移動(dòng)軸線到圖中央 90
3.8.1 操作步驟 90
3.8.2 工作原理 91
3.8.3 補(bǔ)充說明 91
3.9 繪制直方圖 91
3.9.1 準(zhǔn)備工作 92
3.9.2 操作步驟 92
3.9.3 工作原理 93
3.10 繪制誤差條形圖 94
3.10.1 準(zhǔn)備工作 94
3.10.2 操作步驟 94
3.10.3 工作原理 95
3.10.4 補(bǔ)充說明 97
3.11 繪制餅圖 97
3.11.1 準(zhǔn)備工作 97
3.11.2 操作步驟 97
3.12 繪制帶填充區(qū)域的圖表 99
3.12.1 準(zhǔn)備工作 99
3.12.2 操作步驟 99
3.12.3 工作原理 100
3.12.4 補(bǔ)充說明 100
3.13 繪制堆積圖 101
3.13.1 準(zhǔn)備工作 101
3.13.2 操作步驟 101
3.13.3 工作原理 103
3.14 繪制帶彩色標(biāo)記的散點(diǎn)圖 103
3.14.1 準(zhǔn)備工作 103
3.14.2 操作步驟 103
3.13.3 工作原理 104
第4章 學(xué)習(xí)更多圖表和定制化 105
4.1 簡介 105
4.2 設(shè)置坐標(biāo)軸標(biāo)簽的透明度和大小 106
4.2.1 準(zhǔn)備工作 106
4.2.2 操作步驟 106
4.2.3 工作原理 107
4.2.4 補(bǔ)充說明 108
4.3 為圖表線條添加陰影 109
4.3.1 準(zhǔn)備工作 109
4.3.2 操作步驟 110
4.3.3 工作原理 111
4.3.4 補(bǔ)充說明 111
4.4 向圖表添加數(shù)據(jù)表 112
4.4.1 準(zhǔn)備工作 112
4.4.2 操作步驟 112
4.4.3 工作原理 113
4.4.4 補(bǔ)充說明 113
4.5 使用subplots(子區(qū)) 114
4.5.1 準(zhǔn)備工作 114
4.5.2 操作步驟 114
4.5.3 工作原理 116
4.5.4 補(bǔ)充說明 116
4.6 定制化網(wǎng)格 116
4.6.1 準(zhǔn)備工作 116
4.6.2 操作步驟 118
4.6.3 工作原理 120
4.7 創(chuàng)建等高線圖 120
4.7.1 準(zhǔn)備工作 120
4.7.2 操作步驟 122
4.7.3 工作原理 123
4.8 填充圖表底層區(qū)域 123
4.8.1 準(zhǔn)備工作 124
4.8.2 操作步驟 124
4.8.3 工作原理 126
4.9 繪制極線圖 127
4.9.1 準(zhǔn)備工作 127
4.9.2 操作步驟 127
4.9.3 工作原理 128
4.10 使用極線條可視化文件系統(tǒng)樹 129
4.10.1 準(zhǔn)備工作 129
4.10.2 操作步驟 129
4.10.3 工作原理 132
4.11 定制matplotlib繪圖風(fēng)格 133
4.11.1 準(zhǔn)備工作 133
4.11.2 操作步驟 133
4.11.3 工作原理 134
第5章 創(chuàng)建3D可視化圖表 135
5.1 簡介 135
5.2 創(chuàng)建3D柱狀圖 135
5.2.1 準(zhǔn)備工作 136
5.2.2 操作步驟 136
5.2.3 工作原理 138
5.2.4 補(bǔ)充說明 138
5.3 創(chuàng)建3D直方圖 139
5.3.1 準(zhǔn)備工作 140
5.3.2 操作步驟 140
5.3.3 工作原理 142
5.4 在matplotlib中創(chuàng)建動(dòng)畫 142
5.4.1 準(zhǔn)備工作 142
5.4.2 操作步驟 143
5.4.3 工作原理 144
5.4.4 補(bǔ)充說明 145
5.5 用OpenGL制作動(dòng)畫 146
5.5.1 準(zhǔn)備工作 146
5.5.2 操作步驟 147
5.5.3 工作原理 148
5.5.4 補(bǔ)充說明 149
第6章 用圖像和地圖繪制圖表 150
6.1 簡介 150
6.2 用PIL做圖像處理 151
6.2.1 準(zhǔn)備工作 151
6.2.2 操作步驟 154
6.2.3 工作原理 156
6.2.4 補(bǔ)充說明 156
6.3 繪制帶圖像的圖表 157
6.3.1 準(zhǔn)備工作 157
6.3.2 操作步驟 157
6.3.3 工作原理 160
6.4 在具有其他圖形的圖表中顯示圖像 161
6.4.1 準(zhǔn)備工作 161
6.4.2 操作步驟 162
6.4.3 工作原理 164
6.4.4 補(bǔ)充說明 165
6.5 使用Basemap在地圖上繪制數(shù)據(jù) 165
6.5.1 準(zhǔn)備工作 165
6.5.2 操作步驟 166
6.5.3 工作原理 168
6.5.4 補(bǔ)充說明 170
6.6 生成CAPTCHA圖像 170
6.6.1 準(zhǔn)備工作 171
6.6.2 操作步驟 171
6.6.3 工作原理 174
6.6.4 補(bǔ)充說明 175
第7章 使用正確的圖表理解數(shù)據(jù) 176
7.1 簡介 176
7.2 理解對(duì)數(shù)圖 177
7.2.1 準(zhǔn)備工作 177
7.2.2 操作步驟 177
7.2.3 工作原理 179
7.3 理解頻譜圖 180
7.3.1 準(zhǔn)備工作 180
7.3.2 操作步驟 181
7.3.3 工作原理 183
7.3.4 補(bǔ)充說明 183
7.4 創(chuàng)建火柴桿圖 184
7.4.1 準(zhǔn)備工作 185
7.4.2 操作步驟 185
7.4.3 工作原理 187
7.5 繪制矢量場流線圖 188
7.5.1 準(zhǔn)備工作 188
7.5.2 操作步驟 188
7.5.3 工作原理 190
7.5.4 補(bǔ)充說明 191
7.6 使用顏色表 191
7.6.1 準(zhǔn)備工作 192
7.6.2 操作步驟 193
7.6.3 工作原理 195
7.6.4 補(bǔ)充說明 196
7.7 使用散點(diǎn)圖和直方圖 197
7.7.1 準(zhǔn)備工作 197
7.7.2 操作步驟 198
7.7.3 工作原理 201
7.7.4 補(bǔ)充說明 201
7.8 繪制兩個(gè)變量間的互相關(guān)圖形 204
7.8.1 準(zhǔn)備工作 204
7.8.2 操作步驟 205
7.8.3 工作原理 206
7.9 自相關(guān)的重要性 207
7.9.1 準(zhǔn)備工作 207
7.9.2 操作步驟 208
7.9.3 工作原理 210
7.9.4 補(bǔ)充說明 210
第8章 更多的matplotlib知識(shí) 211
8.1 簡介 211
8.2 繪制風(fēng)桿(barbs) 211
8.2.1 準(zhǔn)備工作 212
8.2.2 操作步驟 213
8.2.3 工作原理 214
8.2.4 補(bǔ)充說明 215
8.3 繪制箱線圖 215
8.3.1 準(zhǔn)備工作 215
8.3.2 操作步驟 216
8.3.3 工作原理 218
8.4 繪制甘特圖 218
8.4.1 準(zhǔn)備工作 218
8.4.2 操作步驟 219
8.4.3 工作原理 223
8.5 繪制誤差條 223
8.5.1 準(zhǔn)備工作 223
8.5.2 操作步驟 224
8.5.3 工作原理 225
8.5.4 補(bǔ)充說明 226
8.6 使用文本和字體屬性 226
8.6.1 準(zhǔn)備工作 226
8.6.2 操作步驟 229
8.6.3 工作原理 232
8.7 用LaTeX渲染文本 232
8.7.1 準(zhǔn)備工作 233
8.7.2 操作步驟 234
8.7.3 工作原理 236
8.7.4 補(bǔ)充說明 237
8.8 理解pyplot和OO API的不同 237
8.8.1 準(zhǔn)備工作 237
8.8.2 操作步驟 239
8.8.3 工作原理 241
8.8.4 補(bǔ)充說明 242
第9章 使用Plot.ly進(jìn)行云端可視化 243
9.1 簡介 243
9.2 創(chuàng)建線形圖 244
9.2.1 準(zhǔn)備工作 244
9.2.2 操作步驟 244
9.2.3 工作原理 245
9.2.4 補(bǔ)充說明 246
9.3 創(chuàng)建柱狀圖 248
9.3.1 準(zhǔn)備工作 248
8.3.2 操作步驟 248
9.3.3 工作原理 249
9.3.4 補(bǔ)充說明 250
9.4 繪制3D三葉結(jié) 250
9.4.1 操作步驟 251
9.4.2 工作原理 251