1 | require("./../../lib/env-js/envjs/node"); |
---|
2 | require("./../../d3"); |
---|
3 | |
---|
4 | var f = d3.format(" .3f"); |
---|
5 | |
---|
6 | var x = d3.scale.linear(); |
---|
7 | console.log("domain([0, 1]).range([0, 1]):"); |
---|
8 | console.log(" -0.5 -> ", f(x(-0.5))); |
---|
9 | console.log(" 0.0 -> ", f(x(0.0))); |
---|
10 | console.log(" 0.5 -> ", f(x(0.5))); |
---|
11 | console.log(" 1.0 -> ", f(x(1.0))); |
---|
12 | console.log(" 1.5 -> ", f(x(1.5))); |
---|
13 | console.log(""); |
---|
14 | |
---|
15 | var x = d3.scale.linear().domain([1, 2]); |
---|
16 | console.log("domain([1, 2]).range([0, 1]):"); |
---|
17 | console.log(" 0.5 -> ", f(x(0.5))); |
---|
18 | console.log(" 1.0 -> ", f(x(1.0))); |
---|
19 | console.log(" 1.5 -> ", f(x(1.5))); |
---|
20 | console.log(" 2.0 -> ", f(x(2.0))); |
---|
21 | console.log(" 2.5 -> ", f(x(2.5))); |
---|
22 | console.log(""); |
---|
23 | |
---|
24 | var x = d3.scale.linear().domain([new Date(1990, 0, 1), new Date(1991, 0, 1)]); |
---|
25 | console.log("domain([01/01/1990, 01/01/1991]).range([0, 1]):"); |
---|
26 | console.log(" 10/20/1989 -> ", f(x(new Date(1989, 09, 20)))); |
---|
27 | console.log(" 01/01/1990 -> ", f(x(new Date(1990, 00, 01)))); |
---|
28 | console.log(" 03/15/1990 -> ", f(x(new Date(1990, 02, 15)))); |
---|
29 | console.log(" 05/27/1990 -> ", f(x(new Date(1990, 04, 27)))); |
---|
30 | console.log(" 01/01/1991 -> ", f(x(new Date(1991, 00, 01)))); |
---|
31 | console.log(" 03/15/1991 -> ", f(x(new Date(1991, 02, 15)))); |
---|
32 | console.log(""); |
---|
33 | |
---|
34 | var x = d3.scale.linear().range(["red", "blue"]); |
---|
35 | console.log("domain([0, 1]).range([\"red\", \"blue\"]):"); |
---|
36 | console.log(" -0.5 -> ", x(-0.5)); |
---|
37 | console.log(" 0.0 -> ", x(0.0)); |
---|
38 | console.log(" 0.5 -> ", x(0.5)); |
---|
39 | console.log(" 1.0 -> ", x(1.0)); |
---|
40 | console.log(" 1.5 -> ", x(1.5)); |
---|
41 | console.log(""); |
---|
42 | |
---|
43 | var x = d3.scale.linear().range(["red", "blue"]).interpolate(d3.interpolateHsl); |
---|
44 | console.log("domain([0, 1]).range([\"red\", \"blue\"]).interpolate(hsl):"); |
---|
45 | console.log(" -0.5 -> ", x(-0.5)); |
---|
46 | console.log(" 0.0 -> ", x(0.0)); |
---|
47 | console.log(" 0.5 -> ", x(0.5)); |
---|
48 | console.log(" 1.0 -> ", x(1.0)); |
---|
49 | console.log(" 1.5 -> ", x(1.5)); |
---|
50 | console.log(""); |
---|
51 | |
---|
52 | var x = d3.scale.linear(); |
---|
53 | console.log("domain coercion:"); |
---|
54 | console.log(" String -> ", x.domain(["1", "2"]).domain()); |
---|
55 | console.log(" Date -> ", x.domain([new Date(1990, 0, 1), new Date(1991, 0, 1)]).domain()); |
---|
56 | console.log(" Number -> ", x.domain([new Number(41), new Number(42)]).domain()); |
---|
57 | console.log(""); |
---|
58 | |
---|
59 | var x = d3.scale.linear(); |
---|
60 | console.log("domain coercion, invert:"); |
---|
61 | console.log(" String -> ", x.domain(["0", "2"]).invert(.5)); |
---|
62 | console.log(" Date -> ", x.domain([new Date(1990, 0, 1), new Date(1991, 0, 1)]).invert(.5)); |
---|
63 | console.log(" Number -> ", x.domain([new Number(0), new Number(42)]).invert(.5)); |
---|
64 | console.log(""); |
---|
65 | |
---|
66 | var x = d3.scale.linear(); |
---|
67 | console.log("range coercion, invert:"); |
---|
68 | console.log(" String -> ", x.range(["0", "2"]).invert("1")); |
---|
69 | console.log(" Date -> ", x.range([new Date(1990, 0, 1), new Date(1991, 0, 1)]).invert(new Date(1990, 6, 2, 13))); |
---|
70 | console.log(" Number -> ", x.range([new Number(0), new Number(42)]).invert(new Number(21))); |
---|
71 | console.log(" ??? -> ", x.range(["#000", "#fff"]).invert("#999")); // can't be coerced |
---|
72 | console.log(""); |
---|
73 | |
---|
74 | var x = d3.scale.linear(); |
---|
75 | console.log("ticks:"); |
---|
76 | console.log(" 1 -> ", x.ticks(1).map(x.tickFormat(1)).join(", ")); |
---|
77 | console.log(" 2 -> ", x.ticks(2).map(x.tickFormat(2)).join(", ")); |
---|
78 | console.log(" 5 -> ", x.ticks(5).map(x.tickFormat(5)).join(", ")); |
---|
79 | console.log(" 10 -> ", x.ticks(10).map(x.tickFormat(10)).join(", ")); |
---|
80 | console.log(""); |
---|
81 | |
---|
82 | var x = d3.scale.linear().domain([1, 0]); |
---|
83 | console.log("descending ticks:"); |
---|
84 | console.log(" 1 -> ", x.ticks(1).map(x.tickFormat(1)).join(", ")); |
---|
85 | console.log(" 2 -> ", x.ticks(2).map(x.tickFormat(2)).join(", ")); |
---|
86 | console.log(" 5 -> ", x.ticks(5).map(x.tickFormat(5)).join(", ")); |
---|
87 | console.log(" 10 -> ", x.ticks(10).map(x.tickFormat(10)).join(", ")); |
---|
88 | console.log(""); |
---|
89 | |
---|
90 | var x = d3.scale.linear().clamp(true); |
---|
91 | console.log("domain clamping:") |
---|
92 | console.log(" inspection -> ", x.clamp()); |
---|
93 | console.log(" under -> ", x(-1)); |
---|
94 | console.log(" over -> ", x(2)); |
---|
95 | console.log(""); |
---|
96 | |
---|
97 | var x = d3.scale.linear().domain([1, 0]).clamp(true); |
---|
98 | console.log("domain clamping reversed:") |
---|
99 | console.log(" under -> ", x(-1)); |
---|
100 | console.log(" over -> ", x(2)); |
---|
101 | console.log(""); |
---|
102 | |
---|
103 | var x = d3.scale.linear().clamp(false); |
---|
104 | console.log("domain unclamping:") |
---|
105 | console.log(" under -> ", x(-1)); |
---|
106 | console.log(" over -> ", x(11)); |
---|
107 | console.log(""); |
---|
108 | |
---|
109 | var x = d3.scale.linear(); |
---|
110 | console.log("nice():"); |
---|
111 | [[1.1, 10.9], [10.9, 1.1], [.7, 11.001], [123.1, 6.7], [0, .49]].forEach(function(d) { |
---|
112 | var s = " [" + d.map(f) + " ]"; |
---|
113 | while (s.length < 21) s += " "; |
---|
114 | console.log(" ", s + " -> ", x.domain(d).nice().domain().map(f).join(",")); |
---|
115 | }); |
---|
116 | console.log(""); |
---|