1. 简介
作为数据可视化开发者,我们总是在反复做一个非常关键的事情:将数值从数据领域映射到图形领域。例如:将最近一次453美元的采购映射为一个653像素的长条;又如,将昨晚23.59美元的酒吧账单映射为一个34像素的长条。从某种程度上讲,这就是数据可视化的全部内容-将数据高效、准确地映射为图形。
什么是尺度?
对于函数f,集合A是它的定义域,集合B是它的值域。试想,如果A代表数据域,B代表图形域,那么函数f就是D3中将集合A映射到集合B的一个尺度。
2. 使用连续尺度
线性尺度:
var linearCapped = d3.scaleLinear()
.domain([1, 10])
.range([1, 20])
幂级尺度:
var pow = d3.scalePow()
.exponent(2)
rangeRound()与range()作用基本一致,都是用来设置尺度的值域,但是会进行取整。
var powCapped = d3.scalePow()
.exponent(2)
.domain([1, 10])
.rangeRound([1, 10])
对数尺度