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