如果你急于学习D3.js这个划时代的Web图形和数据可视化的JavaScript库,那该书就是为你准备的。该书面向具有编程或数据科学背景的技术读者,内容简洁明快,突出了概念和模式的统一。作者Philipp K.Janert将其在工作中遇到的问题融入书中,帮助你学以致用。
如果你只有一般的编程经验而没有进行过现代Web开发,该书也为你提供了技术支持,像SVG、HTML5、C5S和DOM等在书中都有涉及,这也使得该书成为技术读者的一站式资源。
通过学习《快学熟用D3》,你将:
了解D3选择集这个库的基本组织原则。
学习如何使用数据绑定创建数据驱动文档。
创建动画图形和交互式用户界面。
用曲线、形状和颜色绘制图形。
使用内置方法构建热力图、树形图和网络图。
通过编写可复用组件来简化工作量。
本书对D3进行了全面而简洁的介绍,涵盖了大部分主要功能,具体包括选择与绑定、事件、交互和动画、生成器、组件、布局、文件、数据加载、格式规范、数值的视觉映射、颜色、彩色比例尺和热力图、树形图和网状图,以及数组、统计和时间戳等辅助工具。本书致力于成为一站式资源整合点,为学习该框架的人员提供便利,涵盖了API文档及其他背景信息,如SVG、JavaScript、DOM,以及HTML canvas元素等。
时移世易,时光荏苒。现在的前端和以前相比已经有了翻天覆地的改变,从混沌时期的原生JS到以操作DOM为主的iQuery,再到三大框架React、Angular和Vue,Node.js让前端程序员们也有能力把手伸向以前从未踏足过的服务端领域,Electron让前端程序员制作桌面应用成为可能,树莓派/Ruff让JavaScript在物联网(IOT)中也有了一席之地。本书所讲的D3.js其实是数据可视化这一门类的库,市面上讲解它的书籍早已汗牛充栋。这本书虽然名字是“D3 for the Impatient”,其中的内容却并不简单,所用的D3版本也是相对较新的,相信可以为从事数据可视化的程序员和工程师提供帮助。这是百花齐放的时代。时代给了前端诸多的前进方向和更好的学习前景,同时也对知识的扎实程度和对新技术的关注度提出了挑战。太多太多的东西摆在我们面前,让我们深感迷茫和困惑。在这种情况下,我们首先要做的就是保持一颗学习的心,只有这样才能够保持竞争力,让自己不被淘汰。比起对学习新技术的恐惧,我们更需要的是面对恐惧的勇气。科学研究也表明,人类的大脑天生就会排斥超出能力范围的事物,当一个人没有能力去完成一件事情时,就容易产生畏难情绪,害怕失败。但是,勇气是一个人处于逆境中的光明。因为害怕失败,所以更要鼓起勇气超越自己。突破了,你就成长了;退缩了,你就还待在以前的位置裹足不前。人类的赞歌是勇气的赞歌,人类的伟大是勇气的伟大。人生本就是一段不断超越自我的旅途。缺乏勇气的人总是举步维艰,不断被超越,总是听天由命,以为自己无能为力却总是因为恐惧放弃了抗争的机会。试着拥有一颗学习的心吧,试着鼓起前行的勇气吧!超越自己就是胜利。
菲利普·K.贾纳特(Philipp K.Janert),于1997年获得华盛顿大学理论物理学博士学位,之后一直从事技术工作,担任程序员、科学家和应用数学家。他著有《数据之魅:基于开源工具的数据分析》《计算机系统的反馈控制》以及《Gnuplot实战》(第2版)。
前言
第1章 引言
1.1 谁适合读这本书
1.2 为什么选择D3
1.3 通过本书你会学到什么
1.4 如何阅读本书
1.5 术语
第2章 让我们开始画图吧
2.1 第一个例子:单数据集图表
2.2 第二个例子:双数据集图表
2.3 第三个例子:让列表项动起来
第3章 核心问题:选择与绑定
3.1 选择集
3.2 绑定数据
3.3 操作选择集
3.4 通过群组共享选择集之间的信息
第4章 事件、交互和动画
4.1 事件
4.2 让鼠标交互加入进来
4.3 平滑过渡
4.4 基于定时器的动画
第5章 生成器、组件、布局:绘制曲线和形状
5.1 生成器、组件和布局
5.2 符号
5.3 直线和曲线
5.4 圆、弧和饼图:使用布局
5.5 其他形状
5.6 编写自己的组件
第6章 文件、数据加载、格式规范:数据导入和输出
6.1 获取文件
6.2 解析和编写表数据
6.3 格式化数字
第7章 数值的视觉映射:补间、比例尺和坐标轴
7.1 补间
7.2 比例尺
7.3 坐标轴
7.4 示例
第8章 颜色、彩色比例尺和热力图
8.1 颜色和颜色空间转换
8.2 配色
8.3 彩色比例尺
8.4 伪色图及相关技术
第9章 树形图和网状图
9.1 树和层次数据结构
9.2 力导向图
第10章 辅助工具:数组、统计和时间戳
10.1 操作数组结构
10.2 数字数组的描述性统计
10.3 处理日期和时间戳
附录A 设置、工具和资源
附录B SVG便携手册
附录C JavaScript和DOM的速成指南