D3.js 使用d3比例时是否可以设置颜色空间插值?

D3.js 使用d3比例时是否可以设置颜色空间插值?,d3.js,colors,D3.js,Colors,假设您在D3.js中构建了一些色阶: var color1 = d3.scale.linear() .range(['red','green']); var color2 = d3.scale.quantile() .range(['red','green', 'blue']); var color3 = d3.scale.quantize() .range(['red','green', 'blue']); D3将很

假设您在D3.js中构建了一些色阶:

var color1 = d3.scale.linear()
            .range(['red','green']);

var color2 = d3.scale.quantile()
            .range(['red','green', 'blue']);

var color3 = d3.scale.quantize()
            .range(['red','green', 'blue']);
D3将很乐意根据输入域的需要对这些颜色进行插值


我的问题是:是否可以将插值计算的颜色插值设置为lab或Hcl颜色空间?

看起来确实如此。因此,请使用插值器:

var color = d3.scale.linear()
    .range(["steelblue", "brown"])
    .interpolate(d3.interpolateHcl);

有没有办法用你的符号把gamma()连成这个?这里gamma()是什么意思@Lucent你有没有做过类似var interpolator=d3.InterpolatorGb.gamma(2.2)的事情,然后传入var?这可能是v3和v4的区别