比例尺有很多种类型,每一种类型都有各自的方法。
常用的是linear log oridinal
linear
.rangeRound(): 输出的值 四舍五入
.copy():返回一个独立的副本
.tickFormat():一般加载axis
.ticks()
.nice()
.interpolate(): 一般line用的比较多,linear用的比较少。
.invert(y)
linear(x)
log
.base():指定底数
其他都类似
oridinal
1、d3.scale.category10()
var colors = d3.scale.category10(); for (var i = 9; i >= 0; i--) { console.log(i+':'+colors(10-i)); }
注意:colors.length = 1; colors(key),key是什么不重要,顺序很重要。
2、.range() 取值;.range([]) 赋值
3、rangePoints() rangeRoundPoints() 有点复杂,不常用
关于序数比例尺的解释:
有时候,定义域和值域不一定是连续的。例如,有两个数组:
var index = [0, 1, 2, 3, 4];
var color = ["red", "blue", "green", "yellow", "black"];
我们希望 0 对应颜色 red,1 对应 blue,依次类推。
但是,这些值都是离散的,线性比例尺不适合,需要用到序数比例尺。