精通D3.js交互式数据可视化高级编程 目录
程序员文章站
2022-03-19 08:49:21
...
著者:吕之华 2015年版
封面 1
书名 3
版权 4
目录 5
第1章 D3简介 12
1.1 D3是什么 12
1.1.1 D3简史 13
1.1.2 D3的优势 13
1.1.3 D3的适用范围 14
1.2 数据可视化是什么 14
1.2.1 目的 15
1.2.2 构成要素 15
1.2.3 相关概念 17
1.3 图表种类 17
1.4 学习方法 22
第2章 Web前端开发基础 24
2.1 浏览器和服务器 25
2.1.1 浏览器 25
2.1.2 服务器 26
2.2 HTML&CSS 27
2.2.1 HTML元素 28
2.2.2 CSS选择器 31
2.2.3 综合运用 34
2.3 JavaScript 36
2.3.1 在HTML中使用JavaScript 37
2.3.2 语法 37
2.3.3 变量 38
2.3.4 数据类型 39
2.3.5 操作符 41
2.3.6 语句 43
2.3.7 函数 45
2.3.8 对象 45
2.3.9 数组 46
2.4 DOM 47
2.4.1 结构 48
2.4.2 访问和修改HTML元素 48
2.4.3 添加和删除节点 49
2.4.4 事件 50
2.5 SVG 51
2.5.1 位图和矢量图 51
2.5.2 图形元素 52
2.5.3 文字 57
2.5.4 样式 58
2.5.5 标记 59
2.5.6 滤镜 61
2.5.7 渐变 62
第3章 安装和使用 64
3.1 安装 64
3.1.1 下载文件 65
3.1.2 网络引用 65
3.2 搭建服务器 65
3.3 HELLO, WORLD 68
3.4 绘制矢量图 69
3.5 调试 70
第4章 选择集与数据 72
4.1 选择元素 72
4.2 选择集 74
4.2.1 查看状态 74
4.2.2 设定和获取属性 74
4.3 添加、插入和删除 77
4.4 数据绑定 78
4.4.1 datum()的工作过程 79
4.4.2 data()的工作过程 82
4.4.3 绑定的顺序 85
4.5 选择集的处理 87
4.5.1 enter的处理方法 87
4.5.2 exit的处理方法 88
4.5.3 处理模板 89
4.5.4 过滤器 90
4.5.5 选择集的顺序 90
4.5.6 each()的应用 91
4.5.7 call()的应用 91
4.6 数组的处理 92
4.6.1 排序 92
4.6.2 求值 93
4.6.3 操作数组 97
4.6.4 映射(Map) 100
4.6.5 集合(Set) 102
4.6.6 嵌套结构(Nest) 103
4.7 柱形图的制作 107
4.7.1 矩形和文字 108
4.7.2 更新数据 112
第5章 比例尺和坐标轴 116
5.1 定量比例尺 116
5.1.1 线性比例尺 117
5.1.2 指数和对数比例尺 120
5.1.3 量子和分位比例尺 121
5.1.4 阈值比例尺 123
5.2 序数比例尺 124
5.3 坐标轴 129
5.3.1 绘制方法 130
5.3.2 刻度 132
5.3.3 各比例尺的坐标轴 133
5.4 柱形图的坐标轴 134
5.5 散点图的制作 136
第6章 绘制 139
6.1 颜色 139
6.1.1 RGB 140
6.1.2 HSL 141
6.1.3 插值 142
6.2 线段生成器 143
6.3 区域生成器 147
6.4 弧生成器 148
6.5 符号生成器 151
6.6 弦生成器 153
6.7 对角线生成器 155
6.8 折线图的制作 156
第7章 动画 162
7.1 过渡效果 162
7.1.1 过渡的启动 163
7.1.2 过渡的属性 166
7.1.3 子元素 169
7.1.4 each()和call() 171
7.1.5 过渡样式 173
7.2 定时器 174
7.2.1 setInterval和setTimeout 174
7.2.2 d3.timer 175
7.3 应用过渡的场合 176
7.4 简单的动画制作 182
7.4.1 时钟 182
7.4.2 小球运动 183
第8章 交互 185
8.1 交互式入门 185
8.1.1 鼠标 187
8.1.2 键盘 189
8.1.3 触屏 191
8.2 事件 193
8.3 行为 194
8.3.1 拖曳 195
8.3.2 缩放 197
第9章 导入和导出 202
9.1 文件导入 202
9.1.1 JSON 203
9.1.2 CSV 205
9.1.3 XML 209
9.1.4 TEXT 210
9.2 文件导出 211
9.2.1 导出为SVG文件 211
9.2.2 编辑矢量图 214
第10章 布局 217
10.1 布局是什么 217
10.2 饼状图 218
10.3 力导向图 224
10.4 弦图 232
10.5 树状图 239
10.6 集群图 245
10.7 捆图 249
10.8 打包图 256
10.9 直方图 259
10.10 分区图 266
10.11 堆栈图 272
10.12 矩阵树图 279
第11章 地图 285
11.1 地图的数据 285
11.1.1 获取数据 286
11.1.2 简化数据 289
11.1.3 GeoJSON 291
11.1.4 TopoJSON 295
11.2 中国地图 296
11.2.1 基于GeoJSON 296
11.2.2 基于TopoJSON 300
11.3 地理路径 308
11.3.1 地理路径生成器 308
11.3.2 形状生成器 312
11.4 投影 317
11.5 球面数学 326
第12章 友好的交互 328
12.1 提示框 328
12.1.1 饼状图的提示框 329
12.1.2 提示框的样式 332
12.2 坐标系中的焦点 334
12.2.1 折线图的焦点 334
12.2.2 为折线图添加提示框 340
12.3 元素组合 345
12.3.1 饼状图的拖曳 346
12.3.2 移入和移出 347
12.3.3 合并 356
12.4 区域选择 358
12.4.1 在SVG画板里选择一块区域 359
12.4.2 散点图的区域选择 361
12.5 开关 364
12.5.1 思维导图的构造思路 364
12.5.2 思维导图的制作 367
第13章 地图进阶 374
13.1 值域的颜色 374
13.2 标注 379
13.2.1 标注地点 379
13.2.2 夜光图 381
13.3 标线 384
13.3.1 带有箭头的标线 384
13.3.2 球状地图的标线 388
13.4 拖动和缩放 389
13.4.1 平面地图 389
13.4.2 球面地图 392
13.5 力导向地图 394
13.5.1 Voronoi图和Delaunay三角剖分 394
13.5.2 力导向的中国地图 398
附录A 彩色插图 404
附录B 参考文献 421
封面 1
书名 3
版权 4
目录 5
第1章 D3简介 12
1.1 D3是什么 12
1.1.1 D3简史 13
1.1.2 D3的优势 13
1.1.3 D3的适用范围 14
1.2 数据可视化是什么 14
1.2.1 目的 15
1.2.2 构成要素 15
1.2.3 相关概念 17
1.3 图表种类 17
1.4 学习方法 22
第2章 Web前端开发基础 24
2.1 浏览器和服务器 25
2.1.1 浏览器 25
2.1.2 服务器 26
2.2 HTML&CSS 27
2.2.1 HTML元素 28
2.2.2 CSS选择器 31
2.2.3 综合运用 34
2.3 JavaScript 36
2.3.1 在HTML中使用JavaScript 37
2.3.2 语法 37
2.3.3 变量 38
2.3.4 数据类型 39
2.3.5 操作符 41
2.3.6 语句 43
2.3.7 函数 45
2.3.8 对象 45
2.3.9 数组 46
2.4 DOM 47
2.4.1 结构 48
2.4.2 访问和修改HTML元素 48
2.4.3 添加和删除节点 49
2.4.4 事件 50
2.5 SVG 51
2.5.1 位图和矢量图 51
2.5.2 图形元素 52
2.5.3 文字 57
2.5.4 样式 58
2.5.5 标记 59
2.5.6 滤镜 61
2.5.7 渐变 62
第3章 安装和使用 64
3.1 安装 64
3.1.1 下载文件 65
3.1.2 网络引用 65
3.2 搭建服务器 65
3.3 HELLO, WORLD 68
3.4 绘制矢量图 69
3.5 调试 70
第4章 选择集与数据 72
4.1 选择元素 72
4.2 选择集 74
4.2.1 查看状态 74
4.2.2 设定和获取属性 74
4.3 添加、插入和删除 77
4.4 数据绑定 78
4.4.1 datum()的工作过程 79
4.4.2 data()的工作过程 82
4.4.3 绑定的顺序 85
4.5 选择集的处理 87
4.5.1 enter的处理方法 87
4.5.2 exit的处理方法 88
4.5.3 处理模板 89
4.5.4 过滤器 90
4.5.5 选择集的顺序 90
4.5.6 each()的应用 91
4.5.7 call()的应用 91
4.6 数组的处理 92
4.6.1 排序 92
4.6.2 求值 93
4.6.3 操作数组 97
4.6.4 映射(Map) 100
4.6.5 集合(Set) 102
4.6.6 嵌套结构(Nest) 103
4.7 柱形图的制作 107
4.7.1 矩形和文字 108
4.7.2 更新数据 112
第5章 比例尺和坐标轴 116
5.1 定量比例尺 116
5.1.1 线性比例尺 117
5.1.2 指数和对数比例尺 120
5.1.3 量子和分位比例尺 121
5.1.4 阈值比例尺 123
5.2 序数比例尺 124
5.3 坐标轴 129
5.3.1 绘制方法 130
5.3.2 刻度 132
5.3.3 各比例尺的坐标轴 133
5.4 柱形图的坐标轴 134
5.5 散点图的制作 136
第6章 绘制 139
6.1 颜色 139
6.1.1 RGB 140
6.1.2 HSL 141
6.1.3 插值 142
6.2 线段生成器 143
6.3 区域生成器 147
6.4 弧生成器 148
6.5 符号生成器 151
6.6 弦生成器 153
6.7 对角线生成器 155
6.8 折线图的制作 156
第7章 动画 162
7.1 过渡效果 162
7.1.1 过渡的启动 163
7.1.2 过渡的属性 166
7.1.3 子元素 169
7.1.4 each()和call() 171
7.1.5 过渡样式 173
7.2 定时器 174
7.2.1 setInterval和setTimeout 174
7.2.2 d3.timer 175
7.3 应用过渡的场合 176
7.4 简单的动画制作 182
7.4.1 时钟 182
7.4.2 小球运动 183
第8章 交互 185
8.1 交互式入门 185
8.1.1 鼠标 187
8.1.2 键盘 189
8.1.3 触屏 191
8.2 事件 193
8.3 行为 194
8.3.1 拖曳 195
8.3.2 缩放 197
第9章 导入和导出 202
9.1 文件导入 202
9.1.1 JSON 203
9.1.2 CSV 205
9.1.3 XML 209
9.1.4 TEXT 210
9.2 文件导出 211
9.2.1 导出为SVG文件 211
9.2.2 编辑矢量图 214
第10章 布局 217
10.1 布局是什么 217
10.2 饼状图 218
10.3 力导向图 224
10.4 弦图 232
10.5 树状图 239
10.6 集群图 245
10.7 捆图 249
10.8 打包图 256
10.9 直方图 259
10.10 分区图 266
10.11 堆栈图 272
10.12 矩阵树图 279
第11章 地图 285
11.1 地图的数据 285
11.1.1 获取数据 286
11.1.2 简化数据 289
11.1.3 GeoJSON 291
11.1.4 TopoJSON 295
11.2 中国地图 296
11.2.1 基于GeoJSON 296
11.2.2 基于TopoJSON 300
11.3 地理路径 308
11.3.1 地理路径生成器 308
11.3.2 形状生成器 312
11.4 投影 317
11.5 球面数学 326
第12章 友好的交互 328
12.1 提示框 328
12.1.1 饼状图的提示框 329
12.1.2 提示框的样式 332
12.2 坐标系中的焦点 334
12.2.1 折线图的焦点 334
12.2.2 为折线图添加提示框 340
12.3 元素组合 345
12.3.1 饼状图的拖曳 346
12.3.2 移入和移出 347
12.3.3 合并 356
12.4 区域选择 358
12.4.1 在SVG画板里选择一块区域 359
12.4.2 散点图的区域选择 361
12.5 开关 364
12.5.1 思维导图的构造思路 364
12.5.2 思维导图的制作 367
第13章 地图进阶 374
13.1 值域的颜色 374
13.2 标注 379
13.2.1 标注地点 379
13.2.2 夜光图 381
13.3 标线 384
13.3.1 带有箭头的标线 384
13.3.2 球状地图的标线 388
13.4 拖动和缩放 389
13.4.1 平面地图 389
13.4.2 球面地图 392
13.5 力导向地图 394
13.5.1 Voronoi图和Delaunay三角剖分 394
13.5.2 力导向的中国地图 398
附录A 彩色插图 404
附录B 参考文献 421