Rev | Line | |
---|
[76] | 1 | d3.scale.quantize = function() { |
---|
| 2 | var x0 = 0, |
---|
| 3 | x1 = 1, |
---|
| 4 | kx = 2, |
---|
| 5 | i = 1, |
---|
| 6 | range = [0, 1]; |
---|
| 7 | |
---|
| 8 | function scale(x) { |
---|
| 9 | return range[Math.max(0, Math.min(i, Math.floor(kx * (x - x0))))]; |
---|
| 10 | } |
---|
| 11 | |
---|
| 12 | scale.domain = function(x) { |
---|
| 13 | if (!arguments.length) return [x0, x1]; |
---|
| 14 | x0 = x[0]; |
---|
| 15 | x1 = x[1]; |
---|
| 16 | kx = range.length / (x1 - x0); |
---|
| 17 | return scale; |
---|
| 18 | }; |
---|
| 19 | |
---|
| 20 | scale.range = function(x) { |
---|
| 21 | if (!arguments.length) return range; |
---|
| 22 | range = x; |
---|
| 23 | kx = range.length / (x1 - x0); |
---|
| 24 | i = range.length - 1; |
---|
| 25 | return scale; |
---|
| 26 | }; |
---|
| 27 | |
---|
| 28 | return scale; |
---|
| 29 | }; |
---|
Note: See
TracBrowser
for help on using the repository browser.