UNPKG

d3

Version:

A small, free JavaScript library for manipulating documents based on data.

17 lines (14 loc) 384 B
function d3_scale_polylinear(domain, range, uninterpolate, interpolate) { var u = [], i = [], j = 0, n = domain.length; while (++j < n) { u.push(uninterpolate(domain[j - 1], domain[j])); i.push(interpolate(range[j - 1], range[j])); } return function(x) { var j = d3.bisect(domain, x, 1, domain.length - 1) - 1; return i[j](u[j](x)); }; }