《精通D3.js 交互式数据可视化高级编程》PDF下载

  • 购买积分:14 如何计算积分?
  • 作  者:吕之华著
  • 出 版 社:北京:电子工业出版社
  • 出版年份:2015
  • ISBN:9787121267765
  • 页数:410 页
图书介绍:本书以当前流行的数据可视化技术D3.js为主要内容,分为三大部分,共计13章。第一部分讲述基础知识,第二部分学习制作各种常见图表,第三部分讲解交互式图表及地图的进阶应用。本书是一个相对完整的D3.js教程,讲解此技术所有重要的知识点,既有基础入门知识,又有相对深入的内容。笔者秉持一个原则:由易到难,循序渐进,图文并茂,清晰易懂。

第1章 D3简介 1

1.1 D3是什么 1

1.1.1 D3简史 2

1.1.2 D3的优势 2

1.1.3 D3的适用范围 3

1.2 数据可视化是什么 3

1.2.1 目的 4

1.2.2 构成要素 4

1.2.3 相关概念 6

1.3 图表种类 6

1.4 学习方法 11

第2章 Web前端开发基础 13

2.1 浏览器和服务器 14

2.1.1 浏览器 14

2.1.2 服务器 15

2.2 HTML&CSS 16

2.2.1 HTML元素 17

2.2.2 CSS选择器 20

2.2.3 综合运用 23

2.3 JavaScript 25

2.3.1 在HTML中使用JavaScript 26

2.3.2 语法 26

2.3.3 变量 27

2.3.4 数据类型 28

2.3.5 操作符 30

2.3.6 语句 32

2.3.7 函数 34

2.3.8 对象 34

2.3.9 数组 35

2.4 DOM 36

2.4.1 结构 37

2.4.2 访问和修改HTML元素 37

2.4.3 添加和删除节点 38

2.4.4 事件 39

2.5 SVG 40

2.5.1 位图和矢量图 40

2.5.2 图形元素 41

2.5.3 文字 46

2.5.4 样式 47

2.5.5 标记 48

2.5.6 滤镜 50

2.5.7 渐变 51

第3章 安装和使用 53

3.1 安装 53

3.1.1 下载文件 54

3.1.2 网络引用 54

3.2 搭建服务器 54

3.3 Hello,World 57

3.4 绘制矢量图 58

3.5 调试 59

第4章 选择集与数据 61

4.1 选择元素 61

4.2 选择集 63

4.2.1 查看状态 63

4.2.2 设定和获取属性 63

4.3 添加、插入和删除 66

4.4 数据绑定 67

4.4.1 datum()的工作过程 68

4.4.2 data()的工作过程 71

4.4.3 绑定的顺序 74

4.5 选择集的处理 76

4.5.1 enter的处理方法 76

4.5.2 exit的处理方法 77

4.5.3 处理模板 78

4.5.4 过滤器 79

4.5.5 选择集的顺序 79

4.5.6 each()的应用 80

4.5.7 call()的应用 80

4.6 数组的处理 81

4.6.1 排序 81

4.6.2 求值 82

4.6.3 操作数组 86

4.6.4 映射(Map) 89

4.6.5 集合(Set) 91

4.6.6 嵌套结构(Nest) 92

4.7 柱形图的制作 96

4.7.1 矩形和文字 97

4.7.2 更新数据 101

第5章 比例尺和坐标轴 105

5.1 定量比例尺 105

5.1.1 线性比例尺 106

5.1.2 指数和对数比例尺 109

5.1.3 量子和分位比例尺 110

5.1.4 阈值比例尺 112

5.2 序数比例尺 113

5.3 坐标轴 118

5.3.1 绘制方法 119

5.3.2 刻度 121

5.3.3 各比例尺的坐标轴 122

5.4 柱形图的坐标轴 123

5.5 散点图的制作 125

第6章 绘制 128

6.1 颜色 128

6.1.1 RGB 129

6.1.2 HSL 130

6.1.3 插值 131

6.2 线段生成器 132

6.3 区域生成器 136

6.4 弧生成器 137

6.5 符号生成器 140

6.6 弦生成器 142

6.7 对角线生成器 144

6.8 折线图的制作 145

第7章 动画 151

7.1 过渡效果 151

7.1.1 过渡的启动 152

7.1.2 过渡的属性 155

7.1.3 子元素 158

7.1.4 each()和call() 160

7.1.5 过渡样式 162

7.2 定时器 163

7.2.1 setInterval和setTimeout 163

7.2.2 d3.timer 164

7.3 应用过渡的场合 165

7.4 简单的动画制作 171

7.4.1 时钟 171

7.4.2 小球运动 172

第8章 交互 174

8.1 交互式入门 174

8.1.1 鼠标 176

8.1.2 键盘 178

8.1.3 触屏 180

8.2 事件 182

8.3 行为 183

8.3.1 拖曳 184

8.3.2 缩放 186

第9章 导入和导出 191

9.1 文件导入 191

9.1.1 JSON 192

9.1.2 CSV 194

9.1.3 XML 198

9.1.4 TEXT 199

9.2 文件导出 200

9.2.1 导出为SVG文件 200

9.2.2 编辑矢量图 203

第10章 布局 206

10.1 布局是什么 206

10.2 饼状图 207

10.3 力导向图 213

10.4 弦图 221

10.5 树状图 228

10.6 集群图 234

10.7 捆图 238

10.8 打包图 245

10.9 直方图 248

10.10 分区图 255

10.11 堆栈图 261

10.12 矩阵树图 268

第11章 地图 274

11.1 地图的数据 274

11.1.1 获取数据 275

11.1.2 简化数据 278

11.1.3 GeoJSON 280

11.1.4 TopoJSON 284

11.2 中国地图 285

11.2.1 基于GeoJSON 285

11.2.2 基于TopoJSON 289

11.3 地理路径 297

11.3.1 地理路径生成器 297

11.3.2 形状生成器 301

11.4 投影 306

11.5 球面数学 315

第12章 友好的交互 317

12.1 提示框 317

12.1.1 饼状图的提示框 318

12.1.2 提示框的样式 321

12.2 坐标系中的焦点 323

12.2.1 折线图的焦点 323

12.2.2 为折线图添加提示框 329

12.3 元素组合 334

12.3.1 饼状图的拖曳 335

12.3.2 移入和移出 336

12.3.3 合并 345

12.4 区域选择 347

12.4.1 在SVG画板里选择一块区域 348

12.4.2 散点图的区域选择 350

12.5 开关 353

12.5.1 思维导图的构造思路 353

12.5.2 思维导图的制作 356

第13章 地图进阶 363

13.1 值域的颜色 363

13.2 标注 368

13.2.1 标注地点 368

13.2.2 夜光图 370

13.3 标线 373

13.3.1 带有箭头的标线 373

13.3.2 球状地图的标线 377

13.4 拖动和缩放 378

13.4.1 平面地图 378

13.4.2 球面地图 381

13.5 力导向地图 383

13.5.1 Voronoi图和Delaunay三角剖分 383

13.5.2 力导向的中国地图 387

附录A 彩色插图 393

附录B 参考文献 410