| author | Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr> |
| Thu, 10 Apr 2014 14:20:23 +0200 | |
| changeset 47 | c0b4a8b5a012 |
| permissions | -rw-r--r-- |
|
47
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
1 |
// Based on http://vis.stanford.edu/protovis/ex/qqplot.html |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
2 |
d3.chart.qq = function() { |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
3 |
var width = 1, |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
4 |
height = 1, |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
5 |
duration = 0, |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
6 |
domain = null, |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
7 |
tickFormat = null, |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
8 |
n = 100, |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
9 |
x = d3_chart_qqX, |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
10 |
y = d3_chart_qqY; |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
11 |
|
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
12 |
// For each small multiple… |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
13 |
function qq(g) { |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
14 |
g.each(function(d, i) { |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
15 |
var g = d3.select(this), |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
16 |
qx = d3_chart_qqQuantiles(n, x.call(this, d, i)), |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
17 |
qy = d3_chart_qqQuantiles(n, y.call(this, d, i)), |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
18 |
xd = domain && domain.call(this, d, i) || [d3.min(qx), d3.max(qx)], // new x-domain |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
19 |
yd = domain && domain.call(this, d, i) || [d3.min(qy), d3.max(qy)], // new y-domain |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
20 |
x0, // old x-scale |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
21 |
y0; // old y-scale |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
22 |
|
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
23 |
// Compute the new x-scale. |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
24 |
var x1 = d3.scale.linear() |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
25 |
.domain(xd) |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
26 |
.range([0, width]); |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
27 |
|
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
28 |
// Compute the new y-scale. |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
29 |
var y1 = d3.scale.linear() |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
30 |
.domain(yd) |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
31 |
.range([height, 0]); |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
32 |
|
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
33 |
// Retrieve the old scales, if this is an update. |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
34 |
if (this.__chart__) { |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
35 |
x0 = this.__chart__.x; |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
36 |
y0 = this.__chart__.y; |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
37 |
} else { |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
38 |
x0 = d3.scale.linear().domain([0, Infinity]).range(x1.range()); |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
39 |
y0 = d3.scale.linear().domain([0, Infinity]).range(y1.range()); |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
40 |
} |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
41 |
|
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
42 |
// Stash the new scales. |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
43 |
this.__chart__ = {x: x1, y: y1}; |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
44 |
|
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
45 |
// Update diagonal line. |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
46 |
var diagonal = g.selectAll("line.diagonal") |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
47 |
.data([null]); |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
48 |
|
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
49 |
diagonal.enter().append("svg:line") |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
50 |
.attr("class", "diagonal") |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
51 |
.attr("x1", x1(yd[0])) |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
52 |
.attr("y1", y1(xd[0])) |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
53 |
.attr("x2", x1(yd[1])) |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
54 |
.attr("y2", y1(xd[1])); |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
55 |
|
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
56 |
diagonal.transition() |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
57 |
.duration(duration) |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
58 |
.attr("x1", x1(yd[0])) |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
59 |
.attr("y1", y1(xd[0])) |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
60 |
.attr("x2", x1(yd[1])) |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
61 |
.attr("y2", y1(xd[1])); |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
62 |
|
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
63 |
// Update quantile plots. |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
64 |
var circle = g.selectAll("circle") |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
65 |
.data(d3.range(n).map(function(i) { |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
66 |
return {x: qx[i], y: qy[i]}; |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
67 |
})); |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
68 |
|
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
69 |
circle.enter().append("svg:circle") |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
70 |
.attr("class", "quantile") |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
71 |
.attr("r", 4.5) |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
72 |
.attr("cx", function(d) { return x0(d.x); }) |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
73 |
.attr("cy", function(d) { return y0(d.y); }) |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
74 |
.style("opacity", 1e-6) |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
75 |
.transition() |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
76 |
.duration(duration) |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
77 |
.attr("cx", function(d) { return x1(d.x); }) |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
78 |
.attr("cy", function(d) { return y1(d.y); }) |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
79 |
.style("opacity", 1); |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
80 |
|
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
81 |
circle.transition() |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
82 |
.duration(duration) |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
83 |
.attr("cx", function(d) { return x1(d.x); }) |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
84 |
.attr("cy", function(d) { return y1(d.y); }) |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
85 |
.style("opacity", 1); |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
86 |
|
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
87 |
circle.exit().transition() |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
88 |
.duration(duration) |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
89 |
.attr("cx", function(d) { return x1(d.x); }) |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
90 |
.attr("cy", function(d) { return y1(d.y); }) |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
91 |
.style("opacity", 1e-6) |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
92 |
.remove(); |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
93 |
|
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
94 |
var xformat = tickFormat || x1.tickFormat(4), |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
95 |
yformat = tickFormat || y1.tickFormat(4), |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
96 |
tx = function(d) { return "translate(" + x1(d) + "," + height + ")"; }, |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
97 |
ty = function(d) { return "translate(0," + y1(d) + ")"; }; |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
98 |
|
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
99 |
// Update x-ticks. |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
100 |
var xtick = g.selectAll("g.x.tick") |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
101 |
.data(x1.ticks(4), function(d) { |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
102 |
return this.textContent || xformat(d); |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
103 |
}); |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
104 |
|
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
105 |
var xtickEnter = xtick.enter().append("svg:g") |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
106 |
.attr("class", "x tick") |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
107 |
.attr("transform", function(d) { return "translate(" + x0(d) + "," + height + ")"; }) |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
108 |
.style("opacity", 1e-6); |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
109 |
|
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
110 |
xtickEnter.append("svg:line") |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
111 |
.attr("y1", 0) |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
112 |
.attr("y2", -6); |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
113 |
|
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
114 |
xtickEnter.append("svg:text") |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
115 |
.attr("text-anchor", "middle") |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
116 |
.attr("dy", "1em") |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
117 |
.text(xformat); |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
118 |
|
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
119 |
// Transition the entering ticks to the new scale, x1. |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
120 |
xtickEnter.transition() |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
121 |
.duration(duration) |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
122 |
.attr("transform", tx) |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
123 |
.style("opacity", 1); |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
124 |
|
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
125 |
// Transition the updating ticks to the new scale, x1. |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
126 |
xtick.transition() |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
127 |
.duration(duration) |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
128 |
.attr("transform", tx) |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
129 |
.style("opacity", 1); |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
130 |
|
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
131 |
// Transition the exiting ticks to the new scale, x1. |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
132 |
xtick.exit().transition() |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
133 |
.duration(duration) |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
134 |
.attr("transform", tx) |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
135 |
.style("opacity", 1e-6) |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
136 |
.remove(); |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
137 |
|
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
138 |
// Update ticks. |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
139 |
var ytick = g.selectAll("g.y.tick") |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
140 |
.data(y1.ticks(4), function(d) { |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
141 |
return this.textContent || yformat(d); |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
142 |
}); |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
143 |
|
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
144 |
var ytickEnter = ytick.enter().append("svg:g") |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
145 |
.attr("class", "y tick") |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
146 |
.attr("transform", function(d) { return "translate(0," + y0(d) + ")"; }) |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
147 |
.style("opacity", 1e-6); |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
148 |
|
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
149 |
ytickEnter.append("svg:line") |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
150 |
.attr("x1", 0) |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
151 |
.attr("x2", 6); |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
152 |
|
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
153 |
ytickEnter.append("svg:text") |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
154 |
.attr("text-anchor", "end") |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
155 |
.attr("dx", "-.5em") |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
156 |
.attr("dy", ".3em") |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
157 |
.text(yformat); |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
158 |
|
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
159 |
// Transition the entering ticks to the new scale, y1. |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
160 |
ytickEnter.transition() |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
161 |
.duration(duration) |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
162 |
.attr("transform", ty) |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
163 |
.style("opacity", 1); |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
164 |
|
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
165 |
// Transition the updating ticks to the new scale, y1. |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
166 |
ytick.transition() |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
167 |
.duration(duration) |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
168 |
.attr("transform", ty) |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
169 |
.style("opacity", 1); |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
170 |
|
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
171 |
// Transition the exiting ticks to the new scale, y1. |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
172 |
ytick.exit().transition() |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
173 |
.duration(duration) |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
174 |
.attr("transform", ty) |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
175 |
.style("opacity", 1e-6) |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
176 |
.remove(); |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
177 |
}); |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
178 |
} |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
179 |
|
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
180 |
qq.width = function(x) { |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
181 |
if (!arguments.length) return width; |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
182 |
width = x; |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
183 |
return qq; |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
184 |
}; |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
185 |
|
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
186 |
qq.height = function(x) { |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
187 |
if (!arguments.length) return height; |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
188 |
height = x; |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
189 |
return qq; |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
190 |
}; |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
191 |
|
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
192 |
qq.duration = function(x) { |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
193 |
if (!arguments.length) return duration; |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
194 |
duration = x; |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
195 |
return qq; |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
196 |
}; |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
197 |
|
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
198 |
qq.domain = function(x) { |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
199 |
if (!arguments.length) return domain; |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
200 |
domain = x == null ? x : d3.functor(x); |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
201 |
return qq; |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
202 |
}; |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
203 |
|
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
204 |
qq.count = function(z) { |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
205 |
if (!arguments.length) return n; |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
206 |
n = z; |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
207 |
return qq; |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
208 |
}; |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
209 |
|
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
210 |
qq.x = function(z) { |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
211 |
if (!arguments.length) return x; |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
212 |
x = z; |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
213 |
return qq; |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
214 |
}; |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
215 |
|
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
216 |
qq.y = function(z) { |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
217 |
if (!arguments.length) return y; |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
218 |
y = z; |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
219 |
return qq; |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
220 |
}; |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
221 |
|
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
222 |
qq.tickFormat = function(x) { |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
223 |
if (!arguments.length) return tickFormat; |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
224 |
tickFormat = x; |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
225 |
return qq; |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
226 |
}; |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
227 |
|
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
228 |
return qq; |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
229 |
}; |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
230 |
|
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
231 |
function d3_chart_qqQuantiles(n, values) { |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
232 |
var m = values.length - 1; |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
233 |
values = values.slice().sort(d3.ascending); |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
234 |
return d3.range(n).map(function(i) { |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
235 |
return values[~~(i * m / n)]; |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
236 |
}); |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
237 |
} |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
238 |
|
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
239 |
function d3_chart_qqX(d) { |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
240 |
return d.x; |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
241 |
} |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
242 |
|
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
243 |
function d3_chart_qqY(d) { |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
244 |
return d.y; |
|
c0b4a8b5a012
add toolkit.html + démonstrateurs
Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
parents:
diff
changeset
|
245 |
} |