Ale*_*rie 4 interpolation linear-interpolation d3.js
这是我的代码:
var color = d3.scaleLinear()
.domain([0, 10000])
.interpolate(d3.interpolateBlues);
console.log(color(5000));
Run Code Online (Sandbox Code Playgroud)
而不是告诉我5000对应淡蓝色,我得到错误"r0不是一个函数".我究竟做错了什么?
好吧,想通了.如果使用定义范围本身的d3.interpolateBlues等函数,则必须使用d3.scaleSequential而不是d3.scaleLinear.正确的代码是:
var color = d3.scaleSequential(d3.interpolateBlues)
.domain([0, 10000])
console.log(color(5000));
Run Code Online (Sandbox Code Playgroud)
请参阅https://github.com/d3/d3-scale#sequential-scales