ScottMurray是一名编码艺术家,他的工作是编写代码来创建视觉数据图表和其他交互式作品,涉及交互式设计、系统设计和生成艺术。
Scott是旧金山大学助理教授,主要讲授数据可视化和交互设计。他是Processing(processing.org)的贡献者,也在培训班上讲创造性编码。
Scott拥有瓦萨学院的文学学士学位、马萨诸塞州艺术与设计学院动态媒体研究所美术硕士学位。他的个人作品站点是alignedleft.com。
目录
- 前言
- 第1章写在前面
- 1.1数据为什么要可视化
- 1.2为什么要写代码
- 1.3为什么要交互
- 1.4为什么要在Web上
- 1.5这是一本什么书
- 1.6读者是谁
- 1.7这不是什么书
- 1.8使用示例代码
- 1.9谢谢你
- 第2章D3简介
- 2.1D3能做什么
- 2.2D3不能做什么
- 2.3起源与背景
- 2.4替代方案
- 2.4.1简易图表
- 2.4.2图谱可视化
- 2.4.3地图映射
- 2.4.4较原始的方案
- 2.4.5三维图形
- 2.4.6基于D3的工具
- 第3章技术基础
- 3.1Web(万维网)
- 3.2HTML
- 3.2.1内容和结构
- 3.2.2通过元素来添加结构
- 3.2.3常用元素
- 3.2.4属性
- 3.2.5类和ID
- 3.2.6注释
- 3.3DOM
- 3.4开发者工具
- 3.5渲染与盒模型
- 3.6CSS
- 3.6.1选择符
- 3.6.2属性和值
- 3.6.3注释
- 3.6.4引用样式
- 3.6.5继承、层叠和特指度
- 3.7JavaScript
- 3.7.1Hello, Console
- 3.7.2变量
- 3.7.3其他数据类型
- 3.7.3数学运算符
- 3.7.4比较运算符
- 3.7.5控制结构
- 3.7.6函数
- 3.7.7注释
- 3.7.8引用脚本文件
- 3.7.9JavaScript陷阱
- 3.8SVG
- 3.8.1SVG元素
- 3.8.2简单的图形
- 3.8.3为SVG元素添加样式
- 3.8.4分层与绘制顺序
- 3.8.5透明度
- 3.9关于兼容性
- 第4章安装D3
- 4.1下载D3
- 4.2引用D3
- 4.3配置Web服务器
- 4.3.1基于Python的文本终端方案
- 4.3.2MAMP、WAMP和LAMP
- 4.3.3快开始吧
- 第5章数据
- 5.1生成页面元素
- 5.1.1连缀方法
- 5.1.2各个击破
- 5.1.3平稳交接
- 5.1.4不要连缀
- 5.2绑定数据
- 5.2.1怎么绑定
- 5.2.2数据
- 5.2.3作出你的选择
- 5.2.4绑定及确定
- 5.3使用自己的数据
- 5.3.1自定义函数
- 5.3.2数据需要拥抱
- 5.2.3添加样式
- 第6章基于数据绘图
- 6.1绘制DIV
- 6.1.1设定属性
- 6.1.2关于类
- 6.1.3言归正传
- 6.1.4设定样式
- 6.2data()的魔力
- 6.3绘制SVG
- 6.3.1创建SVG
- 6.3.2数据驱动的图形
- 6.3.3你好,色彩
- 6.4绘制条形图
- 6.4.1老方法生成的条形图
- 6.4.2用新方法改进条形图
- 6.4.3上色
- 6.4.4加标签
- 6.5绘制散点图
- 6.5.1数据
- 6.5.2散点图
- 6.5.3散点大小
- 6.5.4标签
- 6.6更上一层楼
- 第7章比例尺
- 7.1苹果和像素
- 7.2值域和范围
- 7.3归一化
- 7.4创建比例尺
- 7.5缩放散点图
- 7.5.1d3.min()和d3.max()
- 7.5.2设置动态缩放
- 7.5.3整合缩放后的值
- 7.6修饰图表
- 7.7其他方法
- 7.8其他比例尺
- 第8章数轴
- 8.1数轴简介
- 8.2设定数轴
- 8.3修整数轴
- 8.4优化刻度
- 8.5垂直数轴
- 8.6最后的润色
- 8.7为刻度标签定义样式
- 第9章更新、过渡和动画
- 9.1更新条形图
- 9.1.1序数比例尺
- 9.1.2自动分档
- 9.1.3使用序数比例尺
- 9.1.4其他更新
- 9.2更新数据
- 9.2.1通过事件监听器实现交互
- 9.2.2改变数据
- 9.2.3更新视觉元素
- 9.3过渡动画
- 9.3.1持续时间
- 9.3.2缓动函数
- 9.3.3延迟时间
- 9.3.4使用随机数据
- 9.3.5更新比例尺
- 9.3.6更新数轴
- 9.3.7在过渡开始和结束时执行操作
- 9.4其他数据更新方式
- 9.4.1添加值(和元素)
- 9.4.2删除值(和元素)
- 9.4.3通过键联结数据
- 9.4.4添加和删除组合拳
- 9.4.5简要回顾
- 第10章交互式图表
- 10.1绑定事件监听器
- 10.2什么是行为
- 10.3分组SVG元素
- 10.4提示条
- 10.4.1浏览器默认提示条
- 10.4.2SVG元素提示条
- 10.4.3HTML的div提示条
- 10.5适应触摸设备
- 10.6更进一步
- 第11章布局
- 11.1饼图布局
- 11.2堆叠布局
- 11.3力导向布局
- 第12章地图
- 12.1JSON与GeoJSON
- 12.2路径
- 12.3投影
- 12.4等值区域
- 12.5添加定位点
- 12.6取得和解析地图数据
- 12.6.1查找shapefile文件
- 12.6.2选择解析度
- 12.6.3简化数据文件
- 12.6.4转换为GeoJSON
- 第13章导出文件
- 13.1导出位图
- 13.2导出PDF
- 13.3导出SVG
- 附录A扩展阅读
- A.1图书
- A.2网站
- A.3Twitter