1 以圖敘事和 D3 1
1.1 可視化,已可視 1
1.2 圖錶賦予數據一種形式,該形式闡述瞭數據的內涵 2
1.3 質量:內容為王 4
1.4 設計:形式至上 5
1.5 以圖敘事 6
1.6 開啓 D3 7
1.7 設計師為什麼喜歡 D3 8
1.8 程序員為什麼鍾愛 D3 8
1.9 什麼時候不該使用 D3 9
1.10 D3的使用要點 9
1.11所需工具 10
1.12小結 11
2 發掘並圖解案例 13
2.1 開始 13
2.2 世界正在變老嗎 14
2.3 發現並研究數據 15
2.4 打磨概念 18
2.5 選擇形式 19
2.5.1 用柱形圖展示數據 19
2.5.2 用堆積柱形圖展示數據 20
2.5.3 用綫圖展示數據 22
2.5.4 用餅圖展示數據 23
2.5.5 用條形圖展示數據 25
2.5.6 用多個微型條形圖展示數據 26
2.5.7 選圖建議— —思維導圖 28
2.6 本書將構建的例子 30
2.7 小結 31
3 可縮放矢量圖形 33
3.1 原理一瞥 33
3.2 到底什麼是 SVG 33
3.3 用 D3繪製圓形 34
3.4 在 Web Inspector中查看 SVG 36
3.5 通過 CSS改變 SVG元素的風格 37
3.6 其他圖形 39
3.6.1 矩形 39
3.6.2 圓角矩形 40
3.6.3 圓形 40
3.6.4 橢圓 41
3.6.5 多邊形 41
3.6.6 綫 42
3.6.7 路徑 42
3.7 SVG文本 43
3.8 SVG樣式屬性 46
3.8.1 顔色和透明 46
3.8.2 筆觸屬性 47
3.9 繪圖順序和編組 49
3.10變形 51
3.11用 SVG構建條形圖 53
3.12小結 66
4 用 D3選擇集操控網頁 67
4.1 配置 D3 67
4.2 選擇元素 68
4.2.1 使用 CSS選擇器創建選擇集 71
4.2.2 從其他選擇集中新建選擇集 72
4.2.3 將選擇集賦值為變量 72
4.3 通過選擇集修改屬性 72
4.3.1 attr()的工作原理 74
4.3.2 使用 attr()應用樣式類和規則 76
4.4 聲明式的 D3 77
4.5 鏈式方法調用 77
4.5.1 在鏈式調用過程中新建選擇集 79
4.5.2 鏈式調用和變量賦值 80
4.6 添加元素 80
4.7 串在一起 82
4.8 用 d3.selectAll()選中多個元素 84
4.9 使用選擇集製作條形圖 85
4.9.1 使用變量 96
4.9.2 數學運算 98
4.9.3 使用更好的變量 98
4.9.4 為數據使用變量 99
4.9.5 進行顯式約束 100
4.9.6 使用循環 101
4.10小結 107
5 數據連接:進入 109
5.1 什麼是數據連接 109
5.2 數據連接的核心概念:進入 110
5.3 進入並綁定數據 112
5.4 使用數據連接製作條形圖 115
5.5 使用匿名函數訪問綁定數據 120
5.6 完成圖形的剩餘部分 123
5.7 在對象中存儲數據 123
5.8 小結 129
6 縮放圖形並添加軸綫 131
6.1 綫性比例尺 131
6.2 靈巧地使用邊距規範 137
6.3 添加坐標軸 139
6.4 序數比例尺和坐標軸 147
6.5 小結 160
7 加載並過濾外部數據 161
7.1 使用人口分布數據構建圖形 161
7.2 D3兼容的數據格式 162
7.3 創建服務器並上傳數據 163
7.3.1 通過命令行初始化服務器 163
7.3.2 創建索引文件 164
7.4 D3加載數據的方法 165
7.4.1 迴調方法 165
7.4.2 D3如何解析 CSV錶格 166
7.5 處理異步請求 169
7.5.1 用外部數據創建條形圖 170
7.5.2 優化條形圖 172
7.6 加載和處理大(超大)數據集 175
7.7 閤並內容 178
7.8 小結 180
8 為圖形添加交互和動畫效果 181
8.1 數據連接:更新和退齣 181
8.2 交互按鈕 185
8.2.1 用數據連接創建按鈕 186
8.2.2 讓按鈕更方便點擊 192
8.3 更新圖形 195
8.4 添加轉場動畫效果 199
8.5 使用鍵 200
8.6 小結 202
9 添加播放按鈕 203
9.1 在方法中封裝更新階段 203
9.2 在頁麵上添加播放按鈕 207
9.3 點擊播放 209
9.4 允許用戶中斷播放 212
9.5 小結 217
10 修行靠自身 219
10.1本書是學習 D3的基礎 219
10.2如何剋服障礙 220
10.3持續編碼 222
10.4小結 222
附錄 A JavaScript入門 223
A. JavaScript簡介 223
A.瀏覽器中的 JavaScript控製颱 223
A.基本運算、變量及數據類型 224
A.在頁麵和js文件中編寫 JavaScript代碼 227
A.數組和對象 229
A.方法和函數 232
A. if語句和 for循環 233
A.調試 237
附錄 B 整理人口分布數據 241
· · · · · · (
收起)