| 作者 |
| [加] 朱启(Nick Zhu) |
| 丛书名 |
| 出版社 |
| 人民邮电出版社 |
| ISBN |
| 9787115497871 |
| 简要 |
| 简介 |
| 内容简介书籍计算机书籍 当今,我们的世界已经进入万物互联的时代,每天都会产生海量的数据,如果直接面对这些数据,可能让人无从下手。相反,如果将数据可视化,用形象生动的形式展现出来,不仅有利于分析其中的关联,还能攫取可能存在的商业机会。本书旨在通过大量的示例和代码,向读者讲述如何利用D3 4.x来实现数据可视化。只要读者了解JavaScript,就能完全掌握本书的内容。 本书共13章,从如何搭建D3.js的开发环境开始,逐步介绍D3中的各种操作,其中包括选集、数据的初步处理、数据映射、坐标轴组件、动画过渡效果、SVG相关介绍、绘制图表、安排布局、可视化交互、力学模拟、制作地图和测试驱动。为了帮助读者理解这些丰富的概念,本书提供了大量的示例和代码。最后,在附录部分,为读者介绍了另外两个JavaScript库,主要是关于三维制图和多维图表的。 如果读者是一名熟悉HTML、CSS、JavaScript的开发人员或架构师,并且希望了解D3的大部分知识,那么本书将非常合适。本书还可作为资深的D3数据可视化程序开发人员的快速参考指南。 |
| 目录 |
| 第 1章 D3.js入门指南 1 1.1 简介 1 1.2 搭建简易的D3开发环境 2 1.2.1 准备工作 2 1.2.2 搭建环境 2 1.2.3 工作原理 3 1.2.4 更多内容 4 1.3 搭建基于NPM的D3开发环境 5 1.3.1 准备工作 5 1.3.2 搭建环境 5 1.3.3 工作原理 6 1.3.4 更多内容 7 1.4 理解D3风格的函数式JavaScript编程 9 1.4.1 准备工作 9 1.4.2 开始编程 9 1.4.3 工作原理 11 1.4.4 更多内容 15 第 2章 精挑细选 17 2.1 简介 17 2.1.1 选集入门 17 2.1.2 CSS3选择器入门 18 2.2 选取单个元素 19 2.2.1 准备工作 20 2.2.2 开始编程 20 2.2.3 工作原理 20 2.3 选取多个元素 22 2.3.1 准备工作 22 2.3.2 开始编程 22 2.3.3 工作原理 23 2.4 迭代选集中的元素 23 2.4.1 准备工作 24 2.4.2 开始编程 24 2.4.3 工作原理 24 2.5 使用子选择器 26 2.5.1 准备工作 26 2.5.2 开始编程 26 2.5.3 工作原理 27 2.6 函数级联调用 28 2.6.1 准备工作 29 2.6.2 开始编程 29 2.6.3 工作原理 30 2.7 处理原始选集 30 2.7.1 准备工作 31 2.7.2 开始编程 31 2.7.3 工作原理 32 第3章 与数据同行 34 3.1 简介 34 3.2 将数组绑定为数据 38 3.2.1 准备工作 38 3.2.2 开始编程 39 3.2.3 工作原理 40 3.3 将对象字面量绑定为数据 43 3.3.1 准备工作 43 3.3.2 开始编程 43 3.3.3 工作原理 45 3.4 将函数绑定为数据 46 3.4.1 准备工作 47 3.4.2 开始编程 47 3.4.3 工作原理 48 3.5 数组的处理 50 3.5.1 准备工作 50 3.5.2 开始编程 50 3.5.3 工作原理 52 3.6 数据的过滤 53 3.6.1 准备工作 53 3.6.2 开始编程 54 3.6.3 工作原理 56 3.7 基于数据的图形排序 56 3.7.1 准备工作 57 3.7.2 开始编程 57 3.7.3 工作原理 59 3.8 从服务器加载数据 59 3.8.1 准备工作 60 3.8.2 开始编程 60 3.8.3 工作原理 61 3.9 利用队列异步加载数据 62 3.9.1 准备工作 63 3.9.2 开始编程 63 3.9.3 工作原理 64 第4章 张弛有“度” 66 4.1 简介 66 4.2 使用连续尺度 68 4.2.1 准备工作 68 4.2.2 开始编程 68 4.2.3 工作原理 70 4.3 使用时间尺度 73 4.3.1 准备工作 73 4.3.2 开始编程 73 4.3.3 工作原理 74 4.3.4 更多内容 75 4.3.5 参考阅读 76 4.4 使用有序尺度 76 4.4.1 准备工作 77 4.4.2 开始编程 77 4.4.3 工作原理 79 4.5 字符串插值 80 4.5.1 插值器 80 4.5.2 准备工作 81 4.5.3 开始编程 81 4.5.4 工作原理 82 4.5.5 更多内容 84 4.6 颜色插值 84 4.6.1 准备工作 84 4.6.2 开始编程 84 4.6.3 工作原理 86 4.6.4 参考阅读 87 4.7 复合对象插值 87 4.7.1 准备工作 87 4.7.2 开始编程 87 4.7.3 工作原理 89 第5章 玩转坐标轴 91 5.1 简介 91 5.2 坐标轴基础 91 5.2.1 准备工作 92 5.2.2 开始编程 92 5.2.3 工作原理 94 5.3 自定义刻度 97 5.3.1 准备工作 98 5.3.2 开始编程 98 5.3.3 工作原理 99 5.4 绘制表格线 99 5.4.1 准备工作 100 5.4.2 开始编程 100 5.4.3 工作原理 102 5.5 动态调节坐标轴尺度 104 5.5.1 准备工作 104 5.5.2 开始编程 105 5.5.3 工作原理 107 第6章 优雅变换 108 6.1 简介 108 6.2 单元素动画 109 6.2.1 准备工作 109 6.2.2 开始编程 110 6.2.3 工作原理 110 6.3 多元素动画 111 6.3.1 准备工作 112 6.3.2 开始编程 112 6.3.3 工作原理 114 6.4 使用缓动函数 117 6.4.1 准备工作 117 6.4.2 开始编程 117 6.4.3 工作原理 119 6.5 使用中间帧计算 121 6.5.1 准备工作 121 6.5.2 开始编程 121 6.5.3 工作原理 122 6.5.4 更多内容 124 6.6 使用级联过渡 125 6.6.1 准备工作 125 6.6.2 开始编程 125 6.6.3 工作原理 126 6.7 使用选择性过渡 127 6.7.1 准备工作 127 6.7.2 开始编程 127 6.7.3 工作原理 128 6.7.4 参考阅读 129 6.8 监听过渡事件 129 6.8.1 准备工作 129 6.8.2 开始编程 129 6.8.3 工作原理 130 6.9 使用定时器 131 6.9.1 准备工作 131 6.9.2 开始编程 131 6.9.3 工作原理 133 6.9.4 参考阅读 133 第7章 形状之美 134 7.1 简介 134 7.2 创建简单形状 136 7.2.1 准备工作 136 7.2.2 开始编程 136 7.2.3 工作原理 137 7.2.4 更多内容 138 7.3 使用线条生成器 139 7.3.1 准备工作 139 7.3.2 开始编程 139 7.3.3 工作原理 141 7.3.4 参考阅读 143 7.4 使用曲线 143 7.4.1 准备工作 143 7.4.2 开始编程 143 7.4.3 工作原理 146 7.4.4 参考阅读 147 7.5 更改线条的张力 147 7.5.1 准备工作 147 7.5.2 开始编程 147 7.5.3 工作原理 150 7.6 使用区域生成器 150 7.6.1 准备工作 150 7.6.2 开始编程 150 7.6.3 工作原理 152 7.7 使用断面曲线 154 7.7.1 准备工作 154 7.7.2 开始编程 154 7.7.3 工作原理 156 7.7.4 更多内容 157 7.7.5 参考阅读 157 7.8 使用圆弧生成器 157 7.8.1 准备工作 157 7.8.2 开始编程 157 7.8.3 工作原理 159 7.8.4 参考阅读 160 7.9 实现圆弧过渡 161 7.9.1 准备工作 161 7.9.2 开始编程 161 7.9.3 工作原理 163 7.9.4 更多内容 165 7.9.5 参考阅读 165 第8章 图表美化 166 8.1 简介 166 8.2 创建线图 168 8.2.1 准备工作 168 8.2.2 开始编程 169 8.2.3 工作原理 170 8.3 创建面积图 175 8.3.1 准备工作 175 8.3.2 开始编程 176 8.3.3 工作原理 178 8.4 创建散点图 179 8.4.1 准备工作 179 8.4.2 开始编程 179 8.4.3 工作原理 181 8.5 创建气泡图 183 8.5.1 准备工作 183 8.5.2 开始编程 183 8.5.3 工作原理 185 8.6 创建条形图 186 8.6.1 准备工作 187 8.6.2 开始编程 187 8.6.3 工作原理 189 第9章 井然有序 191 9.1 简介 191 9.2 创建饼图 192 9.2.1 准备工作 192 9.2.2 开始编程 192 9.2.3 工作原理 195 9.2.4 更多内容 197 9.2.5 参考阅读 197 9.3 创建堆叠式面积图 198 9.3.1 准备工作 198 9.3.2 开始编程 198 9.3.3 工作原理 200 9.3.4 更多内容 202 9.3.5 参考阅读 204 9.4 创建矩形式树状结构图 204 9.4.1 准备工作 205 9.4.2 开始编程 206 9.4.3 工作原理 207 9.4.4 参考阅读 211 9.5 创建树 211 9.5.1 准备工作 212 9.5.2 开始编程 212 9.5.3 工作原理 214 9.5.4 参考阅读 220 9.6 创建封闭图 220 9.6.1 准备工作 221 9.6.2 开始编程 221 9.6.3 工作原理 223 9.6.4 参考阅读 225 第 10章 可视化交互 226 10.1 简介 226 10.2 鼠标交互 227 10.2.1 准备工作 227 10.2.2 开始编程 227 10.2.3 工作原理 229 10.2.4 更多内容 230 10.2.5 参考阅读 230 10.3 多点触摸设备交互 230 10.3.1 准备工作 231 10.3.2 开始编程 231 10.3.3 工作原理 233 10.3.4 更多内容 235 10.3.5 参考阅读 236 10.4 缩放和平移行为的实现 236 10.4.1 准备工作 236 10.4.2 开始编程 236 10.4.3 工作原理 239 10.4.4 更多内容 240 10.4.5 参考阅读 240 10.5 拖曳行为的实现 241 10.5.1 准备工作 241 10.5.2 开始编程 241 10.5.3 工作原理 243 10.5.4 更多内容 244 10.5.5 参考阅读 244 第 11章 使用“原力” 245 11.1 简介 245 11.2 使用引力和相互作用力 246 11.2.1 准备工作 246 11.2.2 开始编程 246 11.2.3 工作原理 249 11.2.4 参考阅读 255 11.3 自定义速度 255 11.3.1 准备工作 255 11.3.2 开始编程 255 11.3.3 工作原理 257 11.3.4 参考阅读 258 11.4 设置连接约束 259 11.4.1 准备工作 259 11.4.2 开始编程 259 11.4.3 工作原理 263 11.4.4 参考阅读 268 11.5 借助力来辅助可视化 268 11.5.1 准备工作 268 11.5.2 开始编程 268 11.5.3 工作原理 271 11.5.4 参考阅读 272 11.6 操作“力” 272 11.6.1 准备工作 273 11.6.2 开始编程 273 11.6.3 工作原理 276 11.6.4 参考阅读 278 11.7 创建力导向图 278 11.7.1 准备工作 278 11.7.2 开始编程 278 11.7.3 工作原理 280 11.7.4 参考阅读 282 第 12章 地图的奥秘 283 12.1 简介 283 12.2 美国地图的投影 283 12.2.1 GeoJSON 283 12.2.2 准备工作 285 12.2.3 开始编程 285 12.2.4 工作原理 287 12.2.5 参考阅读 288 12.3 等值区域图的构建 288 12.3.1 准备工作 289 12.3.2 开始编程 289 12.3.3 工作原理 291 12.3.4 参考阅读 291 第 13章 测试驱动 292 13.1 简介 292 13.2 下载Jasmine并搭建测试环境 293 13.2.1 准备工作 293 13.2.2 开始编程 294 13.2.3 工作原理 295 13.2.4 参考阅读 295 13.3 测试驱动—创建图表 295 13.3.1 准备工作 296 13.3.2 开始编程 296 13.3.3 工作原理 297 13.4 测试驱动—SVG渲染 298 13.4.1 准备工作 298 13.4.2 开始编程 298 13.4.3 工作原理 299 13.5 测试驱动—精确渲染 300 13.5.1 准备工作 300 13.5.2 开始编程 300 13.5.3 工作原理 302 13.5.4 参考阅读 303 附录 分分钟搞定交互式分析 304 简介 304 Crossfilter.js库 304 多维图表库—dc.js 308 |