數(shù)據(jù)可視化實(shí)戰(zhàn) 使用D3設(shè)計(jì)交互式圖表 第2版(圖靈出品)
定 價:109 元
- 作者:[美] 斯科特·默里(Scott Murray) 著,林昊,李松峰 譯
- 出版時間:2020/9/1
- ISBN:9787115546098
- 出 版 社:人民郵電出版社
- 中圖法分類:TP31
- 頁碼:307
- 紙張:
- 版次:02
- 開本:16開
本書介紹熱門的、基于瀏覽器的定制化Web 可視化工具——D3,涉及數(shù)據(jù)可視化、交互式設(shè)計(jì)以及Web 開發(fā)這三個主題。作者采用對話式風(fēng)格,通過風(fēng)趣幽默的語言、簡單易懂的示例,由淺入深地介紹了使用D3 所需的基本技術(shù),基于數(shù)據(jù)繪圖、比例尺、數(shù)軸、數(shù)據(jù)更新、過渡動畫等構(gòu)建在線交互式圖表的核心技術(shù),以及D3 中常用的選集工具、布局方法等,最后綜合運(yùn)用各種技術(shù)創(chuàng)建了一個可視化項(xiàng)目。
1.新版升級:本書第2版全面更新并新增了大量內(nèi)容,作者添加了許多新的示例,并且基于多年使用和教授D3的經(jīng)驗(yàn)總結(jié)了大量實(shí)用技巧,即使讀者在數(shù)據(jù)可視化和Web開發(fā)方面沒有經(jīng)驗(yàn),也可以在Web平臺上創(chuàng)建并發(fā)布自己的交互式數(shù)據(jù)可視化項(xiàng)目;
2.美國多所院校的數(shù)據(jù)可視化課程教材;
3.內(nèi)容全面:本書介紹熱門的、基于瀏覽器的定制化Web 可視化工具--D3 4.x,涉及數(shù)據(jù)可視化、交互式設(shè)計(jì)以及Web 開發(fā)這三個主題;
4.通俗易懂:作者采用對話式風(fēng)格,語言風(fēng)趣幽默、示例簡單易懂;
5.提供源代碼及140多個示例下載。
- 學(xué)習(xí)D3 4.x,附帶可下載的代碼以及140多個示例
- 創(chuàng)建條形圖、散點(diǎn)圖、餅圖、堆疊條形圖和力導(dǎo)向圖
- 利用流暢的過渡動畫來展示數(shù)據(jù)的變化
- 引入交互性,幫助用戶探索數(shù)據(jù)
- 從頭到尾創(chuàng)建一個完整的可視化項(xiàng)目
- 分析案例,學(xué)習(xí)出色設(shè)計(jì)師的寶貴經(jīng)驗(yàn)
斯科特·默里(Scott Murray),資深設(shè)計(jì)師,Processing項(xiàng)目高級開發(fā)者,O'reilly Media Learning Group成員,曾是舊金山大學(xué)助理教授,教授過數(shù)據(jù)可視化、交互設(shè)計(jì)和創(chuàng)意編程等課程。
本書贊譽(yù) xiii
前言 xvii
第 1 章 引言 1
1.1 為什么要將數(shù)據(jù)可視化 1
1.2 為什么要編程 2
1.3 為什么需要交互性 2
1.4 為什么要在Web 上 2
1.5 這是一本什么書 3
1.6 讀者對象 3
1.7 本書不包含哪些內(nèi)容 4
1.8 使用示例代碼 4
1.9 謝謝你 5
第 2 章 D3 簡介 6
2.1 D3 能做什么 6
2.2 D3 不能做什么 7
2.3 起源與背景 7
2.4 替代方案 8
2.4.1 簡易圖表 9
2.4.2 圖可視化 9
2.4.3 地圖映射 9
2.4.4 幾乎從零開始的方案 10
2.4.5 三維圖形 11
2.4.6 基于D3 的工具 11
第3 章 技術(shù)基礎(chǔ) 14
3.1 Web 14
3.2 HTML 16
3.2.1 內(nèi)容和結(jié)構(gòu) 16
3.2.2 通過元素來添加結(jié)構(gòu) 17
3.2.3 常用元素 18
3.2.4 屬性 20
3.2.5 class 和id 20
3.2.6 注釋 21
3.3 DOM 21
3.4 開發(fā)者工具 22
3.5 渲染與盒模型 24
3.6 CSS 25
3.6.1 選擇符 26
3.6.2 屬性和值 27
3.6.3 注釋 27
3.6.4 引用樣式 27
3.6.5 繼承、層疊和特指度 29
3.7 JavaScript 30
3.7.1 你好,控制臺 30
3.7.2 變量 31
3.7.3 其他數(shù)據(jù)類型 32
3.7.4 數(shù)學(xué)運(yùn)算符 35
3.7.5 比較運(yùn)算符 36
3.7.6 邏輯運(yùn)算符 36
3.7.7 控制結(jié)構(gòu) 37
3.7.8 函數(shù) 39
3.7.9 注釋 40
3.7.10 引用腳本文件 40
3.7.11 JavaScript 陷阱 40
3.8 SVG 45
3.8.1 SVG 元素 45
3.8.2 簡單的形狀 46
3.8.3 為SVG 元素添加樣式 48
3.8.4 分層與繪制順序 50
3.8.5 透明度 50
3.9 關(guān)于兼容性 53
第4 章 安裝D3 54
4.1 下載D3 54
4.2 引用D3 54
4.3 配置Web 服務(wù)器 55
4.3.1 在終端里使用Python 56
4.3.2 MAMP、WAMP 和LAMP 56
4.3.3 快開始吧 57
第5 章 數(shù)據(jù) 58
5.1 創(chuàng)建頁面元素 58
5.1.1 鏈?zhǔn)椒椒? 60
5.1.2 逐個擊破 61
5.1.3 平穩(wěn)交接 61
5.1.4 不用鏈?zhǔn)秸Z法 62
5.2 綁定數(shù)據(jù) 62
5.2.1 怎么綁定 62
5.2.2 數(shù)據(jù) 62
5.2.3 做出你的選擇 67
5.2.4 綁定與確定 68
5.2.5 使用自己的數(shù)據(jù) 71
5.2.6 自定義函數(shù) 71
5.2.7 數(shù)據(jù)需要擁抱 73
5.2.8 添加樣式 73
第6 章 用數(shù)據(jù)繪圖 75
6.1 繪制DIV 75
6.1.1 設(shè)置屬性 76
6.1.2 關(guān)于類 77
6.1.3 言歸正傳 77
6.1.4 設(shè)置樣式 78
6.2 data() 的魔力 79
6.3 繪制SVG 83
6.3.1 創(chuàng)建SVG 83
6.3.2 數(shù)據(jù)驅(qū)動的圖形 84
6.3.3 你好,色彩! 86
6.4 繪制條形圖 86
6.4.1 老方法生成的條形圖 86
6.4.2 用新方法改進(jìn)條形圖 87
6.4.3 上色 92
6.4.4 標(biāo)簽 93
6.5 繪制散點(diǎn)圖 95
6.5.1 數(shù)據(jù) 95
6.5.2 散點(diǎn)圖 95
6.5.3 散點(diǎn)大小 97
6.5.4 標(biāo)簽 98
6.6 更上一層樓 99
第7 章 比例尺 100
7.1 蘋果和像素 100
7.2 值域和范圍 101
7.3 歸一化 102
7.4 創(chuàng)建比例尺 102
7.5 縮放散點(diǎn)圖 103
7.5.1 d3.min() 和d3.max() 103
7.5.2 設(shè)置動態(tài)縮放 104
7.5.3 整合縮放后的值 105
7.6 修飾圖表 106
7.7 其他方法 108
7.8 其他比例尺 109
7.8.1 平方根比例尺 110
7.8.2 時間比例尺 111
第8 章 數(shù)軸 115
8.1 數(shù)軸簡介 115
8.2 設(shè)置數(shù)軸 116
8.3 定位數(shù)軸 117
8.4 優(yōu)化刻度 120
8.5 垂直數(shù)軸 122
8.6 最后的潤色 123
8.7 格式化刻度標(biāo)簽 124
8.8 時間數(shù)軸 125
第9 章 更新、過渡和動畫 127
9.1 更新條形圖 127
9.1.1 序數(shù)比例尺 128
9.1.2 自動分檔 129
9.1.3 使用分檔比例尺 130
9.1.4 其他更新 131
9.2 更新數(shù)據(jù) 131
9.2.1 通過事件監(jiān)聽器實(shí)現(xiàn)交互 132
9.2.2 改變數(shù)據(jù) 133
9.2.3 更新視覺元素 133
9.3 過渡動畫 135
9.3.1 持續(xù)時間 136
9.3.2 緩動函數(shù) 138
9.3.3 延遲時間 138
9.3.4 使用隨機(jī)數(shù)據(jù) 140
9.3.5 更新比例尺 142
9.3.6 更新數(shù)軸 144
9.3.7 在過渡開始和結(jié)束時執(zhí)行操作 145
9.4 其他數(shù)據(jù)更新方式 152
9.4.1 添加值(和元素) 152
9.4.2 刪除值(和元素) 156
9.4.3 通過鍵聚合數(shù)據(jù) 159
9.4.4 添加和刪除組合拳 164
9.4.5 簡要回顧 165
第 10 章 交互性 166
10.1 綁定事件監(jiān)聽器 166
10.2 什么是行為 167
10.3 分組SVG 元素 172
10.4 提示條 176
10.4.1 瀏覽器默認(rèn)提示條 177
10.4.2 SVG 元素提示條 178
10.4.3 HTML 的div 提示條 179
10.5 適配觸摸設(shè)備 182
10.6 更進(jìn)一步 182
第 11 章 使用路徑 183
11.1 折線圖 184
11.1.1 準(zhǔn)備數(shù)據(jù) 184
11.1.2 設(shè)置比例尺 186
11.1.3 串聯(lián)成線 187
11.1.4 處理丟失的數(shù)據(jù) 188
11.1.5 改進(jìn)折線圖 190
11.2 區(qū)域圖 191
第 12 章 選集 194
12.1 進(jìn)一步了解選集 194
12.2 選擇更具體的元素 198
12.3 保存選集 200
12.4 加入、合并和退出 201
12.4.1 加入元素的選集 201
12.4.2 合并選集 205
12.4.3 退出元素的選集 209
12.5 根據(jù)數(shù)據(jù)過濾選集 210
第 13 章 布局 218
13.1 餅圖布局 218
13.2 堆疊布局 223
13.2.1 新的順序 225
13.2.2 錨定條形 227
13.2.3 堆疊區(qū)域 227
13.3 力導(dǎo)向布局 230
13.3.1 準(zhǔn)備網(wǎng)狀數(shù)據(jù) 230
13.3.2 定義力的模擬 231
13.3.3 創(chuàng)建可見元素 232
13.3.4 隨時間更新可見元素 233
13.3.5 可拖曳的節(jié)點(diǎn) 234
第 14 章 導(dǎo)出文件 236
14.1 位圖 236
14.2 PDF 237
14.3 SVG 237
第 15 章 項(xiàng)目實(shí)戰(zhàn) 241
15.1 準(zhǔn)備數(shù)據(jù) 241
15.2 加載并解析數(shù)據(jù) 243
15.3 渲染初始視圖 246
15.4 添加交互 249
15.5 改進(jìn)樣式 258
15.6 提供執(zhí)行環(huán)境 259
15.7 編程像舞蹈還是園藝 261
附錄A 案例研究 262
附錄B 4.0 版本新增特性 287
附錄C 進(jìn)階學(xué)習(xí) 291
附錄D 分享代碼 295
附錄E 速查手冊 298
作者簡介 307
封面說明 307