颜色插值指的是给出两个 RGB 颜色值,两个颜色之间的值通过插值函数计算得到。线性渐变是添加到 SVG 图形上的过滤器,只需给出两端的颜色值即可。
1. 颜色插值
在【高级 - 第 5.0 章】里已经提到了颜色插值,在这里做一个例子。先定义颜色插值函数如下,
var a = d3.rgb(255,0,0); //红色
var b = d3.rgb(0,255,0); //绿色
var compute = d3.interpolate(a,b);
如此一来,compute 可当做函数使用,参数的范围为[0, 1]。compute(0) 返回红色,compute(1) 返回绿色,传入 0 ~ 1 之间的值时,返回红色到绿色之间的插值颜色。
有时候,某个值域的范围并不在 0 到 1 之间&#x