基于Python的交互式數(shù)據(jù)可視化編程
定 價:69 元
- 作者:(德)阿布哈·貝洛卡(Abha Belorkar)[等]著
- 出版時間:2021/1/1
- ISBN:9787519849887
- 出 版 社:中國電力出版社
- 中圖法分類:TP311.561
- 頁碼:237頁
- 紙張:膠版紙
- 版次:1
- 開本:16K
本書主要介紹了使用Python創(chuàng)建交互式數(shù)據(jù)可視化時需要了解的內容。首先介紹如何使用非交互式數(shù)據(jù)可視化庫Matplotlib和Seabom繪制各種圖。通過研究不同類型的可視化,了解如何選擇一種特定類型的可視化來滿足各種需求。對各種非交互式數(shù)據(jù)可視化庫有所了解之后,將介紹創(chuàng)建直觀且有說服力的數(shù)據(jù)可視化的有關原則,并使用Bokeh和Plotly將繪制的圖轉化為吸引人的故事。本書還會介紹交互式數(shù)據(jù)和模型可視化如何優(yōu)化回歸模型的性能。
前言
說明
這一節(jié)會簡要介紹作者、本書內容、開始學習這本書所需的技能,以及完成本書所有實踐活動和練習的硬件和軟件需求。
關于本書
大量數(shù)據(jù)不斷生成,迫切需要開發(fā)人員能夠將數(shù)據(jù)有效又有趣的可視化呈現(xiàn)。本書將增進你的數(shù)據(jù)探索能力,可以為使用Python創(chuàng)建交互式數(shù)據(jù)可視化的學習提供一個非常好的起點。
首先你會學習如何使用非交互式數(shù)據(jù)可視化庫Matplotlib和Seaborn繪制各種圖。你將研究不同類型的可視化,對它們進行比較,并了解如何選擇一種特定類型的可視化來滿足你的需求。對各種非交互式數(shù)據(jù)可視化庫有所了解之后,你將學習創(chuàng)建直觀且有說服力的數(shù)據(jù)可視化的有關原則,并使用Altair、Bokeh和Plotly將你繪制的圖轉化為吸引人的故事。
學習完這本書,你將會擁有一組新的技能,幫助你成為能夠將數(shù)據(jù)可視化轉換為生動有趣故事的熱門人才。
關于作者
AbhaBelorkar是計算機科學領域的一位教育工作者和研究人員。她在印度彼拉尼的博拉理工學院獲得計算機科學學士學位,并在新加坡國立大學獲得博士學位。目前她的研究工作包括開發(fā)基于統(tǒng)計學、機器學習和數(shù)據(jù)可視化技術的方法,從神經(jīng)退行性疾病的異構基因組數(shù)據(jù)中獲得見解。
SharathChandraGuntuku是自然語言處理和多媒體計算領域的一位研究人員。他在印度彼拉尼的博拉理工學院獲得計算機科學學士學位,在新加坡南洋理工大學獲得博士學位。他的研究目標是利用大規(guī)模的社交媒體圖片和文本數(shù)據(jù)來模擬社會健康水平和心理特征。他使用機器學習、統(tǒng)計分析、自然語言處理和計算機視覺來回答有關個人和社區(qū)健康和心理的問題。
目錄
前言
第1章 Python可視化介紹:基礎和定制繪圖 1
1.1 本章介紹 1
1.2 使用pandasDataFrame處理數(shù)據(jù) 2
1.2.1 從文件讀取數(shù)據(jù) 2
1.2.2 練習1:從文件讀取數(shù)據(jù) 2
1.2.3 觀察和描述數(shù)據(jù) 3
1.2.4 練習2:觀察和描述數(shù)據(jù) 3
1.2.5 從DataFrame選擇列 6
1.2.6 為DataFrame增加新列 6
1.2.7 練習3:為DataFrame增加新列 6
1.2.8 在DataFrame列上應用函數(shù) 8
1.2.9 練習4:在DataFrame列上應用函數(shù) 8
1.2.10 練習5:對多列應用函數(shù) 11
1.2.11 從DataFrame刪除列 12
1.2.12 練習6:從DataFrame刪除列 12
1.2.13 將DataFrame寫至文件 13
1.2.14 練習7:將DataFrame寫至文件 13
1.3 使用pandas和seaborn繪圖 15
1.3.1 創(chuàng)建簡單圖可視化顯示變量分布 15
1.3.2 直方圖 15
1.3.3 練習8:繪制和分析直方圖 15
1.3.4 柱狀圖 18
1.3.5 練習9:創(chuàng)建柱狀圖并計算平均價格分布 18
1.3.6 練習10:創(chuàng)建按一個特定特征分組的柱狀圖 21
1.4 調整繪圖參數(shù) 21
1.4.1 練習11:調整分組柱狀圖的繪圖參數(shù) 21
1.4.2 標注 23
1.4.3 練習12:標注一個柱狀圖 23
1.4.4 實踐活動1:分析不同場景并生成適當?shù)目梢暬?25
1.5 小結 29
第2章 靜態(tài)可視化:全局模式和匯總統(tǒng)計 31
2.1 本章介紹 31
2.2 繪圖表示數(shù)據(jù)中的全局模式 31
2.2.1 散點圖 32
2.2.2 練習13:創(chuàng)建一個靜態(tài)散點圖 33
2.2.3 六邊形圖 33
2.2.4 練習14:創(chuàng)建一個靜態(tài)六邊形圖 33
2.2.5 等高線圖 34
2.2.6 練習15:創(chuàng)建靜態(tài)等高線圖 34
2.2.7 折線圖 35
2.2.8 練習16:創(chuàng)建一個靜態(tài)折線圖 36
2.2.9 練習17:用多個折線圖表示數(shù)據(jù)隨時間的變化 37
2.2.10 熱圖 39
2.2.11 練習18:創(chuàng)建和探索一個靜態(tài)熱圖 39
2.2.12 熱圖中連鎖的概念 43
2.2.13 練習19:在靜態(tài)熱圖中創(chuàng)建連鎖 43
2.3 繪圖表示數(shù)據(jù)的匯總統(tǒng)計 46
2.3.1 再談直方圖 46
2.3.2 示例1:再談直方圖 46
2.3.3 箱形圖 47
2.3.4 練習20:創(chuàng)建和探索靜態(tài)箱形圖 47
2.3.5 小提琴圖 49
2.3.6 練習21:創(chuàng)建一個靜態(tài)小提琴圖 49
2.3.7 實踐活動2:設計靜態(tài)可視化表示全局模式和匯總統(tǒng)計 51
2.4 小結 53
第3章 從靜態(tài)到交互式可視化 54
3.1 本章介紹 54
3.2 靜態(tài)與交互式可視化 55
3.3 交互式數(shù)據(jù)可視化的應用 58
3.4 交互式數(shù)據(jù)可視化入門 60
3.4.1 使用Bokeh創(chuàng)建交互式數(shù)據(jù)可視化 61
3.4.2 練習22:準備數(shù)據(jù)集 62
3.4.3 練習23:為交互式數(shù)據(jù)可視化創(chuàng)建基本靜態(tài)圖 65
3.4.4 練習24:為這個靜態(tài)圖增加一個滑動條 67
3.4.5 練習25:增加一個懸停提示工具 69
3.4.6 使用PlotlyExpress創(chuàng)建交互式數(shù)據(jù)可視化 72
3.4.7 練習26:創(chuàng)建一個交互式散點圖 72
3.4.8 實踐活動3:使用PlotlyExpress創(chuàng)建不同的交互式可視化 76
3.5 小結 78
第4章 基于層次的數(shù)據(jù)交互式可視化 79
4.1 本章介紹 79
4.2 交互式散點圖 80
4.2.1 練習27:為靜態(tài)散點圖增加放大縮小功能 81
4.2.2 練習28:為散點圖增加懸停和工具提示功能 84
4.2.3 練習29:探索散點圖上的選擇和突出顯示功能 86
4.2.4 練習30:生成一個提供選擇、縮放和懸停/工具提示功能的圖 88
4.2.5 跨多圖選擇 91
4.2.6 練習31:跨多圖選擇 92
4.2.7 基于特征值的選擇 94
4.2.8 練習32:基于特征值的選擇 95
4.3 altair中的其他交互式圖 98
4.3.1 練習33:在靜態(tài)柱狀圖上增加縮放特性并計算均值 98
4.3.2 練習34:在柱狀圖上表示均值的一個替代快捷方式 102
4.3.3 練習35:在靜態(tài)熱圖上增加縮放特性 105
4.3.4 練習36:創(chuàng)建相鄰的柱狀圖和熱圖 107
4.3.5 練習37:動態(tài)鏈接一個柱狀圖和一個熱圖 110
4.3.6 實踐活動4:生成一個柱狀圖和一個熱圖表示GooglePlayStoreApps
數(shù)據(jù)集中的內容分級類型 113
4.4 小結 115
第5章 基于時間的數(shù)據(jù)交互式可視化 116
5.1 本章介紹 116
5.2 時態(tài)數(shù)據(jù) 117
5.3 時態(tài)數(shù)據(jù)類型 117
5.3.1 為什么研究時態(tài)數(shù)據(jù)可視化? 118
5.4 理解時態(tài)數(shù)據(jù)和時間序列數(shù)據(jù)的關系 119
5.5 使用時態(tài)數(shù)據(jù)的領域示例 120
5.6 時態(tài)數(shù)據(jù)可視化 120
5.6.1 如何管理和可視化時間序列數(shù)據(jù) 123
5.6.2 pandas中的日期/時間處理 124
5.6.3 建立一個Datetime索引 125
5.7 為時態(tài)數(shù)據(jù)選擇正確的聚合等級 126
5.7.1 練習38:創(chuàng)建一個靜態(tài)柱狀圖并計算時態(tài)數(shù)據(jù)的均值和標準差 127
5.7.2 練習39:計算zscore查找時態(tài)數(shù)據(jù)中的異常值 130
5.8 時態(tài)數(shù)據(jù)中的重采樣 133
5.8.1 上采樣和下采樣的常見問題 134
5.8.2 練習40:時態(tài)數(shù)據(jù)的上采樣和下采樣 134
5.8.3 使用shift和tshift在時間序列數(shù)據(jù)中引入滯后 136
5.8.4 練習41:使用shift和tshift移動數(shù)據(jù)中的時間 137
5.8.5 時間序列中的自相關 139
5.9 交互式時態(tài)數(shù)據(jù)可視化 141
5.9.1 Bokeh基礎 141
5.9.2 使用Bokeh的優(yōu)點 141
5.9.3 練習42:使用Bokeh為靜態(tài)折線圖增加交互性 142
5.9.4 練習43:改變折線圖中線的顏色和寬度 144
5.9.5 練習44:增加方框標注來找出數(shù)據(jù)集中的異常值 145
5.9.6 Bokeh中的交互性 147
5.9.7 實踐活動5:創(chuàng)建一個交互式時態(tài)數(shù)據(jù)可視化 148
5.10 小結 150
第6章 地理數(shù)據(jù)交互式可視化 151
6.1 本章介紹 151
6.2 等值線地圖 152
6.2.1 世界等值線地圖 152
6.2.2 練習45:創(chuàng)建一個世界等值線地圖 153
6.2.3 練習46:調整一個世界等值線地圖 155
6.2.4 練習47:為等值線地圖增加動畫 159
6.2.5 美國各州地圖 162
6.2.6 練習48:創(chuàng)建美國各州的等值線地圖 163
6.3 在地理地圖上繪圖 165
6.3.1 散點圖 166
6.3.2 練習49:在一個地理地圖上繪制散點圖 166
6.3.3 氣泡圖 168
6.3.4 練習50:在地理地圖上繪制氣泡圖 168
6.3.5 地理地圖上的折線圖 174
6.3.6 練習51:在地理地圖上繪制折線圖 174
6.3.7 實踐活動6:創(chuàng)建一個等值線地圖表示全世界可再生能源生產(chǎn)和
消費總量 179
6.4 小結 183
第7章 避免創(chuàng)建交互式可視化的常見陷阱 184
7.1 本章介紹 184
7.2 數(shù)據(jù)格式化和解釋 184
7.2.1 避免處理臟數(shù)據(jù)時常見的問題 185
7.2.2 異常值 185
7.2.3 練習52:使用箱形圖可視化表示數(shù)據(jù)集中的異常值 186
7.2.4 練習53:處理異常值 189
7.2.5 缺失數(shù)據(jù) 191
7.2.6 練習54:處理缺失值 191
7.2.7 重復實例和/或特征 193
7.2.8 不好的特征選擇 194
7.2.9 實踐活動7:確定在一個散點圖上可視化哪些特征 195
7.3 數(shù)據(jù)可視化 197
7.3.1 選擇可視化 197
7.3.2 可視化數(shù)據(jù)時的常見陷阱 199
7.3.3 練習55:創(chuàng)建一個讓人困惑的可視化 199
7.3.4 實踐活動8:創(chuàng)建一個柱狀圖改善可視化 202
7.4 可視化過程速查表 203
7.5 小結 205
第8章 附錄 207
8.1 第1章:Python可視化介紹:基礎和定制繪圖 207
8.1.1 實踐活動1:分析不同場景并生成適當?shù)目梢暬?207
8.2 第2章:靜態(tài)可視化:全局模式和匯總統(tǒng)計 212
8.2.1 實踐活動2:設計靜態(tài)可視化表示全局模式和匯總統(tǒng)計 212
8.3 第3章:從靜態(tài)到交互式可視化 215
8.3.1 實踐活動3:使用PlotlyExpress創(chuàng)建不同的交互式可視化 215
8.4 第4章:基于層次的數(shù)據(jù)交互式可視化 219
8.4.1 實踐活動4:生成一個柱狀圖和一個熱圖表示GooglePlayStoreApps
數(shù)據(jù)集中的內容分級類型 219
8.5 第5章:基于時間的數(shù)據(jù)交互式可視化 223
8.5.1 實踐活動5:創(chuàng)建一個交互式時態(tài)數(shù)據(jù)可視化 223
8.6 第6章:地理數(shù)據(jù)交互式可視化 227
8.6.1 實踐活動6:創(chuàng)建一個等值線地圖表示全世界可再生能源生產(chǎn)和
消費總量 227
8.7 第7章:避免創(chuàng)建交互式可視化的常見陷阱 232
8.7.1 實踐活動7:確定在一個散點圖上可視化哪些特征 232
8.7.2 實踐活動8:創(chuàng)建一個柱狀圖改善可視化 236