-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathtest-scale-linear.js
99 lines (86 loc) · 4.06 KB
/
test-scale-linear.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
require("./../lib/env-js/envjs/node");
require("./../d3");
var f = d3.format(" .3f");
var x = d3.scale.linear();
console.log("domain([0, 1]).range([0, 1]):");
console.log(" -0.5 -> ", f(x(-0.5)));
console.log(" 0.0 -> ", f(x(0.0)));
console.log(" 0.5 -> ", f(x(0.5)));
console.log(" 1.0 -> ", f(x(1.0)));
console.log(" 1.5 -> ", f(x(1.5)));
console.log("");
var x = d3.scale.linear().domain([1, 2]);
console.log("domain([1, 2]).range([0, 1]):");
console.log(" 0.5 -> ", f(x(0.5)));
console.log(" 1.0 -> ", f(x(1.0)));
console.log(" 1.5 -> ", f(x(1.5)));
console.log(" 2.0 -> ", f(x(2.0)));
console.log(" 2.5 -> ", f(x(2.5)));
console.log("");
var x = d3.scale.linear().domain([new Date(1990, 0, 1), new Date(1991, 0, 1)]);
console.log("domain([01/01/1990, 01/01/1991]).range([0, 1]):");
console.log(" 10/20/1989 -> ", f(x(new Date(1989, 09, 20))));
console.log(" 01/01/1990 -> ", f(x(new Date(1990, 00, 01))));
console.log(" 03/15/1990 -> ", f(x(new Date(1990, 02, 15))));
console.log(" 05/27/1990 -> ", f(x(new Date(1990, 04, 27))));
console.log(" 01/01/1991 -> ", f(x(new Date(1991, 00, 01))));
console.log(" 03/15/1991 -> ", f(x(new Date(1991, 02, 15))));
console.log("");
var x = d3.scale.linear().range(["red", "blue"]);
console.log("domain([0, 1]).range([\"red\", \"blue\"]):");
console.log(" -0.5 -> ", x(-0.5));
console.log(" 0.0 -> ", x(0.0));
console.log(" 0.5 -> ", x(0.5));
console.log(" 1.0 -> ", x(1.0));
console.log(" 1.5 -> ", x(1.5));
console.log("");
var x = d3.scale.linear().range(["red", "blue"]).interpolate(d3.interpolateHsl);
console.log("domain([0, 1]).range([\"red\", \"blue\"]).interpolate(hsl):");
console.log(" -0.5 -> ", x(-0.5));
console.log(" 0.0 -> ", x(0.0));
console.log(" 0.5 -> ", x(0.5));
console.log(" 1.0 -> ", x(1.0));
console.log(" 1.5 -> ", x(1.5));
console.log("");
var x = d3.scale.linear();
console.log("domain coercion:");
console.log(" String -> ", x.domain(["1", "2"]).domain());
console.log(" Date -> ", x.domain([new Date(1990, 0, 1), new Date(1991, 0, 1)]).domain());
console.log(" Number -> ", x.domain([new Number(41), new Number(42)]).domain());
console.log("");
var x = d3.scale.linear();
console.log("domain coercion, invert:");
console.log(" String -> ", x.domain(["0", "2"]).invert(.5));
console.log(" Date -> ", x.domain([new Date(1990, 0, 1), new Date(1991, 0, 1)]).invert(.5));
console.log(" Number -> ", x.domain([new Number(0), new Number(42)]).invert(.5));
console.log("");
var x = d3.scale.linear();
console.log("range coercion, invert:");
console.log(" String -> ", x.range(["0", "2"]).invert("1"));
console.log(" Date -> ", x.range([new Date(1990, 0, 1), new Date(1991, 0, 1)]).invert(new Date(1990, 6, 2, 13)));
console.log(" Number -> ", x.range([new Number(0), new Number(42)]).invert(new Number(21)));
console.log(" ??? -> ", x.range(["#000", "#fff"]).invert("#999")); // can't be coerced
console.log("");
var x = d3.scale.linear();
console.log("ticks:");
console.log(" 1 -> ", x.ticks(1).map(x.tickFormat(1)).join(", "));
console.log(" 2 -> ", x.ticks(2).map(x.tickFormat(2)).join(", "));
console.log(" 5 -> ", x.ticks(5).map(x.tickFormat(5)).join(", "));
console.log(" 10 -> ", x.ticks(10).map(x.tickFormat(10)).join(", "));
console.log("");
var x = d3.scale.linear().clamp(true);
console.log("domain clamping:")
console.log(" inspection -> ", x.clamp());
console.log(" under -> ", x(-1));
console.log(" over -> ", x(2));
console.log("");
var x = d3.scale.linear().domain([1, 0]).clamp(true);
console.log("domain clamping reversed:")
console.log(" under -> ", x(-1));
console.log(" over -> ", x(2));
console.log("");
var x = d3.scale.linear().clamp(false);
console.log("domain unclamping:")
console.log(" under -> ", x(-1));
console.log(" over -> ", x(11));
console.log("");