d3_rails 3.2.2 → 3.2.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +8 -8
- data/README.md +1 -1
- data/lib/d3_rails/version.rb +1 -1
- data/vendor/assets/javascripts/d3.js +198 -192
- data/vendor/assets/javascripts/d3.min.js +5 -5
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
---
|
2
2
|
!binary "U0hBMQ==":
|
3
3
|
metadata.gz: !binary |-
|
4
|
-
|
4
|
+
MzY5MDIwNDA1NTczZDNkMjU2N2JlNmY1ODE0ZDg0YjhjMDU1NGEzMA==
|
5
5
|
data.tar.gz: !binary |-
|
6
|
-
|
6
|
+
OTUyNDQ2ZTQ3YWQ0OWY5ZGIxMTg2NjNmYzRjOGVmOWIzMzM0OWQ2OA==
|
7
7
|
!binary "U0hBNTEy":
|
8
8
|
metadata.gz: !binary |-
|
9
|
-
|
10
|
-
|
11
|
-
|
9
|
+
YWQxMjJkNGVlYTdmY2JkODgwNjJmNzJjOGNlN2EzZGRjNTY1ZGVmNTQ4Mjdi
|
10
|
+
NmY5YWUxYzQ0OThlMDc4ZWMzYTJmNGEwZDYyZjFlNWM4OGRmODViYWE4NjY4
|
11
|
+
MTRkMmQyMmYwMGIzMGE2Mzk5YjI1ZTFmNWU2ODQ3OWZkODMwZDE=
|
12
12
|
data.tar.gz: !binary |-
|
13
|
-
|
14
|
-
|
15
|
-
|
13
|
+
NzNiNDNkNGY0YmUzNGQyMmRjM2Q1NmFjYTdhYjkzNzFmNGFiZjZmOTdmNTA3
|
14
|
+
OGUzMTNlNWQzNDk3YTFkMmM2OWUxMzlkNTdhNjQyY2UyZTU5ZTQzOTA5N2Qz
|
15
|
+
ZGY4NjFhMDZjM2Q0NmQ0ZGM2Yjc2ZWI0YjZlNjcyY2UxNTA4ZGU=
|
data/README.md
CHANGED
data/lib/d3_rails/version.rb
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
d3 = function() {
|
2
2
|
var d3 = {
|
3
|
-
version: "3.2.
|
3
|
+
version: "3.2.3"
|
4
4
|
};
|
5
5
|
if (!Date.now) Date.now = function() {
|
6
6
|
return +new Date();
|
@@ -380,11 +380,6 @@ d3 = function() {
|
|
380
380
|
} catch (e) {
|
381
381
|
d3_array = d3_arrayCopy;
|
382
382
|
}
|
383
|
-
var d3_arraySubclass = [].__proto__ ? function(array, prototype) {
|
384
|
-
array.__proto__ = prototype;
|
385
|
-
} : function(array, prototype) {
|
386
|
-
for (var property in prototype) array[property] = prototype[property];
|
387
|
-
};
|
388
383
|
function d3_noop() {}
|
389
384
|
d3.dispatch = function() {
|
390
385
|
var dispatch = new d3_dispatch(), i = -1, n = arguments.length;
|
@@ -458,8 +453,13 @@ d3 = function() {
|
|
458
453
|
return s.replace(d3_requote_re, "\\$&");
|
459
454
|
};
|
460
455
|
var d3_requote_re = /[\\\^\$\*\+\?\|\[\]\(\)\.\{\}]/g;
|
456
|
+
var d3_subclass = {}.__proto__ ? function(object, prototype) {
|
457
|
+
object.__proto__ = prototype;
|
458
|
+
} : function(object, prototype) {
|
459
|
+
for (var property in prototype) object[property] = prototype[property];
|
460
|
+
};
|
461
461
|
function d3_selection(groups) {
|
462
|
-
|
462
|
+
d3_subclass(groups, d3_selectionPrototype);
|
463
463
|
return groups;
|
464
464
|
}
|
465
465
|
var d3_select = function(s, n) {
|
@@ -484,7 +484,7 @@ d3 = function() {
|
|
484
484
|
var d3_selectionPrototype = d3.selection.prototype = [];
|
485
485
|
d3_selectionPrototype.select = function(selector) {
|
486
486
|
var subgroups = [], subgroup, subnode, group, node;
|
487
|
-
|
487
|
+
selector = d3_selection_selector(selector);
|
488
488
|
for (var j = -1, m = this.length; ++j < m; ) {
|
489
489
|
subgroups.push(subgroup = []);
|
490
490
|
subgroup.parentNode = (group = this[j]).parentNode;
|
@@ -500,13 +500,13 @@ d3 = function() {
|
|
500
500
|
return d3_selection(subgroups);
|
501
501
|
};
|
502
502
|
function d3_selection_selector(selector) {
|
503
|
-
return function() {
|
503
|
+
return typeof selector === "function" ? selector : function() {
|
504
504
|
return d3_select(selector, this);
|
505
505
|
};
|
506
506
|
}
|
507
507
|
d3_selectionPrototype.selectAll = function(selector) {
|
508
508
|
var subgroups = [], subgroup, node;
|
509
|
-
|
509
|
+
selector = d3_selection_selectorAll(selector);
|
510
510
|
for (var j = -1, m = this.length; ++j < m; ) {
|
511
511
|
for (var group = this[j], i = -1, n = group.length; ++i < n; ) {
|
512
512
|
if (node = group[i]) {
|
@@ -518,7 +518,7 @@ d3 = function() {
|
|
518
518
|
return d3_selection(subgroups);
|
519
519
|
};
|
520
520
|
function d3_selection_selectorAll(selector) {
|
521
|
-
return function() {
|
521
|
+
return typeof selector === "function" ? selector : function() {
|
522
522
|
return d3_selectAll(selector, this);
|
523
523
|
};
|
524
524
|
}
|
@@ -696,25 +696,24 @@ d3 = function() {
|
|
696
696
|
}) : this.node().innerHTML;
|
697
697
|
};
|
698
698
|
d3_selectionPrototype.append = function(name) {
|
699
|
-
name =
|
700
|
-
|
701
|
-
return this.appendChild(
|
702
|
-
}
|
703
|
-
function appendNS() {
|
704
|
-
return this.appendChild(d3_document.createElementNS(name.space, name.local));
|
705
|
-
}
|
706
|
-
return this.select(name.local ? appendNS : append);
|
699
|
+
name = d3_selection_creator(name);
|
700
|
+
return this.select(function() {
|
701
|
+
return this.appendChild(name.apply(this, arguments));
|
702
|
+
});
|
707
703
|
};
|
704
|
+
function d3_selection_creator(name) {
|
705
|
+
return typeof name === "function" ? name : (name = d3.ns.qualify(name)).local ? function() {
|
706
|
+
return d3_document.createElementNS(name.space, name.local);
|
707
|
+
} : function() {
|
708
|
+
return d3_document.createElementNS(this.namespaceURI, name);
|
709
|
+
};
|
710
|
+
}
|
708
711
|
d3_selectionPrototype.insert = function(name, before) {
|
709
|
-
name =
|
710
|
-
|
711
|
-
|
712
|
-
return this.insertBefore(
|
713
|
-
}
|
714
|
-
function insertNS(d, i) {
|
715
|
-
return this.insertBefore(d3_document.createElementNS(name.space, name.local), before.call(this, d, i));
|
716
|
-
}
|
717
|
-
return this.select(name.local ? insertNS : insert);
|
712
|
+
name = d3_selection_creator(name);
|
713
|
+
before = d3_selection_selector(before);
|
714
|
+
return this.select(function() {
|
715
|
+
return this.insertBefore(name.apply(this, arguments), before.apply(this, arguments));
|
716
|
+
});
|
718
717
|
};
|
719
718
|
d3_selectionPrototype.remove = function() {
|
720
719
|
return this.each(function() {
|
@@ -891,7 +890,7 @@ d3 = function() {
|
|
891
890
|
return n;
|
892
891
|
};
|
893
892
|
function d3_selection_enter(selection) {
|
894
|
-
|
893
|
+
d3_subclass(selection, d3_selection_enterPrototype);
|
895
894
|
return selection;
|
896
895
|
}
|
897
896
|
var d3_selection_enterPrototype = [];
|
@@ -4284,50 +4283,55 @@ d3 = function() {
|
|
4284
4283
|
return (f - b) * (c - a) - (d - b) * (e - a) > 0;
|
4285
4284
|
}
|
4286
4285
|
d3.geom.polygon = function(coordinates) {
|
4287
|
-
coordinates
|
4288
|
-
|
4289
|
-
|
4290
|
-
|
4291
|
-
|
4292
|
-
|
4293
|
-
|
4294
|
-
|
4295
|
-
|
4296
|
-
|
4297
|
-
|
4298
|
-
|
4299
|
-
|
4300
|
-
|
4301
|
-
|
4302
|
-
|
4303
|
-
|
4304
|
-
|
4305
|
-
|
4306
|
-
|
4307
|
-
|
4308
|
-
|
4309
|
-
|
4310
|
-
|
4311
|
-
|
4312
|
-
|
4313
|
-
|
4314
|
-
|
4315
|
-
|
4316
|
-
|
4317
|
-
|
4318
|
-
|
4319
|
-
|
4320
|
-
|
4321
|
-
|
4286
|
+
d3_subclass(coordinates, d3_geom_polygonPrototype);
|
4287
|
+
return coordinates;
|
4288
|
+
};
|
4289
|
+
var d3_geom_polygonPrototype = d3.geom.polygon.prototype = [];
|
4290
|
+
d3_geom_polygonPrototype.area = function() {
|
4291
|
+
var i = -1, n = this.length, a, b = this[n - 1], area = 0;
|
4292
|
+
while (++i < n) {
|
4293
|
+
a = b;
|
4294
|
+
b = this[i];
|
4295
|
+
area += a[1] * b[0] - a[0] * b[1];
|
4296
|
+
}
|
4297
|
+
return area * .5;
|
4298
|
+
};
|
4299
|
+
d3_geom_polygonPrototype.centroid = function(k) {
|
4300
|
+
var i = -1, n = this.length, x = 0, y = 0, a, b = this[n - 1], c;
|
4301
|
+
if (!arguments.length) k = -1 / (6 * this.area());
|
4302
|
+
while (++i < n) {
|
4303
|
+
a = b;
|
4304
|
+
b = this[i];
|
4305
|
+
c = a[0] * b[1] - b[0] * a[1];
|
4306
|
+
x += (a[0] + b[0]) * c;
|
4307
|
+
y += (a[1] + b[1]) * c;
|
4308
|
+
}
|
4309
|
+
return [ x * k, y * k ];
|
4310
|
+
};
|
4311
|
+
d3_geom_polygonPrototype.clip = function(subject) {
|
4312
|
+
var input, closed = d3_geom_polygonClosed(subject), i = -1, n = this.length - d3_geom_polygonClosed(this), j, m, a = this[n - 1], b, c, d;
|
4313
|
+
while (++i < n) {
|
4314
|
+
input = subject.slice();
|
4315
|
+
subject.length = 0;
|
4316
|
+
b = this[i];
|
4317
|
+
c = input[(m = input.length - closed) - 1];
|
4318
|
+
j = -1;
|
4319
|
+
while (++j < m) {
|
4320
|
+
d = input[j];
|
4321
|
+
if (d3_geom_polygonInside(d, a, b)) {
|
4322
|
+
if (!d3_geom_polygonInside(c, a, b)) {
|
4322
4323
|
subject.push(d3_geom_polygonIntersect(c, d, a, b));
|
4323
4324
|
}
|
4324
|
-
|
4325
|
+
subject.push(d);
|
4326
|
+
} else if (d3_geom_polygonInside(c, a, b)) {
|
4327
|
+
subject.push(d3_geom_polygonIntersect(c, d, a, b));
|
4325
4328
|
}
|
4326
|
-
|
4329
|
+
c = d;
|
4327
4330
|
}
|
4328
|
-
|
4329
|
-
|
4330
|
-
|
4331
|
+
if (closed) subject.push(subject[0]);
|
4332
|
+
a = b;
|
4333
|
+
}
|
4334
|
+
return subject;
|
4331
4335
|
};
|
4332
4336
|
function d3_geom_polygonInside(p, a, b) {
|
4333
4337
|
return (b[0] - a[0]) * (p[1] - a[1]) < (b[1] - a[1]) * (p[0] - a[0]);
|
@@ -4336,6 +4340,10 @@ d3 = function() {
|
|
4336
4340
|
var x1 = c[0], x3 = a[0], x21 = d[0] - x1, x43 = b[0] - x3, y1 = c[1], y3 = a[1], y21 = d[1] - y1, y43 = b[1] - y3, ua = (x43 * (y1 - y3) - y43 * (x1 - x3)) / (y43 * x21 - x43 * y21);
|
4337
4341
|
return [ x1 + ua * x21, y1 + ua * y21 ];
|
4338
4342
|
}
|
4343
|
+
function d3_geom_polygonClosed(coordinates) {
|
4344
|
+
var a = coordinates[0], b = coordinates[coordinates.length - 1];
|
4345
|
+
return !(a[0] - b[0] || a[1] - b[1]);
|
4346
|
+
}
|
4339
4347
|
d3.geom.delaunay = function(vertices) {
|
4340
4348
|
var edges = vertices.map(function() {
|
4341
4349
|
return [];
|
@@ -4891,122 +4899,12 @@ d3 = function() {
|
|
4891
4899
|
return "#" + d3_rgb_hex(Math.round(ar + br * t)) + d3_rgb_hex(Math.round(ag + bg * t)) + d3_rgb_hex(Math.round(ab + bb * t));
|
4892
4900
|
};
|
4893
4901
|
}
|
4894
|
-
d3.transform = function(string) {
|
4895
|
-
var g = d3_document.createElementNS(d3.ns.prefix.svg, "g");
|
4896
|
-
return (d3.transform = function(string) {
|
4897
|
-
if (string != null) {
|
4898
|
-
g.setAttribute("transform", string);
|
4899
|
-
var t = g.transform.baseVal.consolidate();
|
4900
|
-
}
|
4901
|
-
return new d3_transform(t ? t.matrix : d3_transformIdentity);
|
4902
|
-
})(string);
|
4903
|
-
};
|
4904
|
-
function d3_transform(m) {
|
4905
|
-
var r0 = [ m.a, m.b ], r1 = [ m.c, m.d ], kx = d3_transformNormalize(r0), kz = d3_transformDot(r0, r1), ky = d3_transformNormalize(d3_transformCombine(r1, r0, -kz)) || 0;
|
4906
|
-
if (r0[0] * r1[1] < r1[0] * r0[1]) {
|
4907
|
-
r0[0] *= -1;
|
4908
|
-
r0[1] *= -1;
|
4909
|
-
kx *= -1;
|
4910
|
-
kz *= -1;
|
4911
|
-
}
|
4912
|
-
this.rotate = (kx ? Math.atan2(r0[1], r0[0]) : Math.atan2(-r1[0], r1[1])) * d3_degrees;
|
4913
|
-
this.translate = [ m.e, m.f ];
|
4914
|
-
this.scale = [ kx, ky ];
|
4915
|
-
this.skew = ky ? Math.atan2(kz, ky) * d3_degrees : 0;
|
4916
|
-
}
|
4917
|
-
d3_transform.prototype.toString = function() {
|
4918
|
-
return "translate(" + this.translate + ")rotate(" + this.rotate + ")skewX(" + this.skew + ")scale(" + this.scale + ")";
|
4919
|
-
};
|
4920
|
-
function d3_transformDot(a, b) {
|
4921
|
-
return a[0] * b[0] + a[1] * b[1];
|
4922
|
-
}
|
4923
|
-
function d3_transformNormalize(a) {
|
4924
|
-
var k = Math.sqrt(d3_transformDot(a, a));
|
4925
|
-
if (k) {
|
4926
|
-
a[0] /= k;
|
4927
|
-
a[1] /= k;
|
4928
|
-
}
|
4929
|
-
return k;
|
4930
|
-
}
|
4931
|
-
function d3_transformCombine(a, b, k) {
|
4932
|
-
a[0] += k * b[0];
|
4933
|
-
a[1] += k * b[1];
|
4934
|
-
return a;
|
4935
|
-
}
|
4936
|
-
var d3_transformIdentity = {
|
4937
|
-
a: 1,
|
4938
|
-
b: 0,
|
4939
|
-
c: 0,
|
4940
|
-
d: 1,
|
4941
|
-
e: 0,
|
4942
|
-
f: 0
|
4943
|
-
};
|
4944
|
-
d3.interpolateNumber = d3_interpolateNumber;
|
4945
|
-
function d3_interpolateNumber(a, b) {
|
4946
|
-
b -= a = +a;
|
4947
|
-
return function(t) {
|
4948
|
-
return a + b * t;
|
4949
|
-
};
|
4950
|
-
}
|
4951
|
-
d3.interpolateTransform = d3_interpolateTransform;
|
4952
|
-
function d3_interpolateTransform(a, b) {
|
4953
|
-
var s = [], q = [], n, A = d3.transform(a), B = d3.transform(b), ta = A.translate, tb = B.translate, ra = A.rotate, rb = B.rotate, wa = A.skew, wb = B.skew, ka = A.scale, kb = B.scale;
|
4954
|
-
if (ta[0] != tb[0] || ta[1] != tb[1]) {
|
4955
|
-
s.push("translate(", null, ",", null, ")");
|
4956
|
-
q.push({
|
4957
|
-
i: 1,
|
4958
|
-
x: d3_interpolateNumber(ta[0], tb[0])
|
4959
|
-
}, {
|
4960
|
-
i: 3,
|
4961
|
-
x: d3_interpolateNumber(ta[1], tb[1])
|
4962
|
-
});
|
4963
|
-
} else if (tb[0] || tb[1]) {
|
4964
|
-
s.push("translate(" + tb + ")");
|
4965
|
-
} else {
|
4966
|
-
s.push("");
|
4967
|
-
}
|
4968
|
-
if (ra != rb) {
|
4969
|
-
if (ra - rb > 180) rb += 360; else if (rb - ra > 180) ra += 360;
|
4970
|
-
q.push({
|
4971
|
-
i: s.push(s.pop() + "rotate(", null, ")") - 2,
|
4972
|
-
x: d3_interpolateNumber(ra, rb)
|
4973
|
-
});
|
4974
|
-
} else if (rb) {
|
4975
|
-
s.push(s.pop() + "rotate(" + rb + ")");
|
4976
|
-
}
|
4977
|
-
if (wa != wb) {
|
4978
|
-
q.push({
|
4979
|
-
i: s.push(s.pop() + "skewX(", null, ")") - 2,
|
4980
|
-
x: d3_interpolateNumber(wa, wb)
|
4981
|
-
});
|
4982
|
-
} else if (wb) {
|
4983
|
-
s.push(s.pop() + "skewX(" + wb + ")");
|
4984
|
-
}
|
4985
|
-
if (ka[0] != kb[0] || ka[1] != kb[1]) {
|
4986
|
-
n = s.push(s.pop() + "scale(", null, ",", null, ")");
|
4987
|
-
q.push({
|
4988
|
-
i: n - 4,
|
4989
|
-
x: d3_interpolateNumber(ka[0], kb[0])
|
4990
|
-
}, {
|
4991
|
-
i: n - 2,
|
4992
|
-
x: d3_interpolateNumber(ka[1], kb[1])
|
4993
|
-
});
|
4994
|
-
} else if (kb[0] != 1 || kb[1] != 1) {
|
4995
|
-
s.push(s.pop() + "scale(" + kb + ")");
|
4996
|
-
}
|
4997
|
-
n = q.length;
|
4998
|
-
return function(t) {
|
4999
|
-
var i = -1, o;
|
5000
|
-
while (++i < n) s[(o = q[i]).i] = o.x(t);
|
5001
|
-
return s.join("");
|
5002
|
-
};
|
5003
|
-
}
|
5004
4902
|
d3.interpolateObject = d3_interpolateObject;
|
5005
4903
|
function d3_interpolateObject(a, b) {
|
5006
4904
|
var i = {}, c = {}, k;
|
5007
4905
|
for (k in a) {
|
5008
4906
|
if (k in b) {
|
5009
|
-
i[k] =
|
4907
|
+
i[k] = d3_interpolate(a[k], b[k]);
|
5010
4908
|
} else {
|
5011
4909
|
c[k] = a[k];
|
5012
4910
|
}
|
@@ -5021,6 +4919,13 @@ d3 = function() {
|
|
5021
4919
|
return c;
|
5022
4920
|
};
|
5023
4921
|
}
|
4922
|
+
d3.interpolateNumber = d3_interpolateNumber;
|
4923
|
+
function d3_interpolateNumber(a, b) {
|
4924
|
+
b -= a = +a;
|
4925
|
+
return function(t) {
|
4926
|
+
return a + b * t;
|
4927
|
+
};
|
4928
|
+
}
|
5024
4929
|
d3.interpolateString = d3_interpolateString;
|
5025
4930
|
function d3_interpolateString(a, b) {
|
5026
4931
|
var m, i, j, s0 = 0, s1 = 0, s = [], q = [], n, o;
|
@@ -5094,9 +4999,6 @@ d3 = function() {
|
|
5094
4999
|
while (--i >= 0 && !(f = d3.interpolators[i](a, b))) ;
|
5095
5000
|
return f;
|
5096
5001
|
}
|
5097
|
-
function d3_interpolateByName(name) {
|
5098
|
-
return name == "transform" ? d3_interpolateTransform : d3_interpolate;
|
5099
|
-
}
|
5100
5002
|
d3.interpolators = [ function(a, b) {
|
5101
5003
|
var t = typeof b;
|
5102
5004
|
return (t === "string" ? d3_rgb_names.has(b) || /^(#|rgb\(|hsl\()/.test(b) ? d3_interpolateRgb : d3_interpolateString : b instanceof d3_Color ? d3_interpolateRgb : t === "object" ? Array.isArray(b) ? d3_interpolateArray : d3_interpolateObject : d3_interpolateNumber)(a, b);
|
@@ -5249,6 +5151,109 @@ d3 = function() {
|
|
5249
5151
|
return Math.round(a + b * t);
|
5250
5152
|
};
|
5251
5153
|
}
|
5154
|
+
d3.transform = function(string) {
|
5155
|
+
var g = d3_document.createElementNS(d3.ns.prefix.svg, "g");
|
5156
|
+
return (d3.transform = function(string) {
|
5157
|
+
if (string != null) {
|
5158
|
+
g.setAttribute("transform", string);
|
5159
|
+
var t = g.transform.baseVal.consolidate();
|
5160
|
+
}
|
5161
|
+
return new d3_transform(t ? t.matrix : d3_transformIdentity);
|
5162
|
+
})(string);
|
5163
|
+
};
|
5164
|
+
function d3_transform(m) {
|
5165
|
+
var r0 = [ m.a, m.b ], r1 = [ m.c, m.d ], kx = d3_transformNormalize(r0), kz = d3_transformDot(r0, r1), ky = d3_transformNormalize(d3_transformCombine(r1, r0, -kz)) || 0;
|
5166
|
+
if (r0[0] * r1[1] < r1[0] * r0[1]) {
|
5167
|
+
r0[0] *= -1;
|
5168
|
+
r0[1] *= -1;
|
5169
|
+
kx *= -1;
|
5170
|
+
kz *= -1;
|
5171
|
+
}
|
5172
|
+
this.rotate = (kx ? Math.atan2(r0[1], r0[0]) : Math.atan2(-r1[0], r1[1])) * d3_degrees;
|
5173
|
+
this.translate = [ m.e, m.f ];
|
5174
|
+
this.scale = [ kx, ky ];
|
5175
|
+
this.skew = ky ? Math.atan2(kz, ky) * d3_degrees : 0;
|
5176
|
+
}
|
5177
|
+
d3_transform.prototype.toString = function() {
|
5178
|
+
return "translate(" + this.translate + ")rotate(" + this.rotate + ")skewX(" + this.skew + ")scale(" + this.scale + ")";
|
5179
|
+
};
|
5180
|
+
function d3_transformDot(a, b) {
|
5181
|
+
return a[0] * b[0] + a[1] * b[1];
|
5182
|
+
}
|
5183
|
+
function d3_transformNormalize(a) {
|
5184
|
+
var k = Math.sqrt(d3_transformDot(a, a));
|
5185
|
+
if (k) {
|
5186
|
+
a[0] /= k;
|
5187
|
+
a[1] /= k;
|
5188
|
+
}
|
5189
|
+
return k;
|
5190
|
+
}
|
5191
|
+
function d3_transformCombine(a, b, k) {
|
5192
|
+
a[0] += k * b[0];
|
5193
|
+
a[1] += k * b[1];
|
5194
|
+
return a;
|
5195
|
+
}
|
5196
|
+
var d3_transformIdentity = {
|
5197
|
+
a: 1,
|
5198
|
+
b: 0,
|
5199
|
+
c: 0,
|
5200
|
+
d: 1,
|
5201
|
+
e: 0,
|
5202
|
+
f: 0
|
5203
|
+
};
|
5204
|
+
d3.interpolateTransform = d3_interpolateTransform;
|
5205
|
+
function d3_interpolateTransform(a, b) {
|
5206
|
+
var s = [], q = [], n, A = d3.transform(a), B = d3.transform(b), ta = A.translate, tb = B.translate, ra = A.rotate, rb = B.rotate, wa = A.skew, wb = B.skew, ka = A.scale, kb = B.scale;
|
5207
|
+
if (ta[0] != tb[0] || ta[1] != tb[1]) {
|
5208
|
+
s.push("translate(", null, ",", null, ")");
|
5209
|
+
q.push({
|
5210
|
+
i: 1,
|
5211
|
+
x: d3_interpolateNumber(ta[0], tb[0])
|
5212
|
+
}, {
|
5213
|
+
i: 3,
|
5214
|
+
x: d3_interpolateNumber(ta[1], tb[1])
|
5215
|
+
});
|
5216
|
+
} else if (tb[0] || tb[1]) {
|
5217
|
+
s.push("translate(" + tb + ")");
|
5218
|
+
} else {
|
5219
|
+
s.push("");
|
5220
|
+
}
|
5221
|
+
if (ra != rb) {
|
5222
|
+
if (ra - rb > 180) rb += 360; else if (rb - ra > 180) ra += 360;
|
5223
|
+
q.push({
|
5224
|
+
i: s.push(s.pop() + "rotate(", null, ")") - 2,
|
5225
|
+
x: d3_interpolateNumber(ra, rb)
|
5226
|
+
});
|
5227
|
+
} else if (rb) {
|
5228
|
+
s.push(s.pop() + "rotate(" + rb + ")");
|
5229
|
+
}
|
5230
|
+
if (wa != wb) {
|
5231
|
+
q.push({
|
5232
|
+
i: s.push(s.pop() + "skewX(", null, ")") - 2,
|
5233
|
+
x: d3_interpolateNumber(wa, wb)
|
5234
|
+
});
|
5235
|
+
} else if (wb) {
|
5236
|
+
s.push(s.pop() + "skewX(" + wb + ")");
|
5237
|
+
}
|
5238
|
+
if (ka[0] != kb[0] || ka[1] != kb[1]) {
|
5239
|
+
n = s.push(s.pop() + "scale(", null, ",", null, ")");
|
5240
|
+
q.push({
|
5241
|
+
i: n - 4,
|
5242
|
+
x: d3_interpolateNumber(ka[0], kb[0])
|
5243
|
+
}, {
|
5244
|
+
i: n - 2,
|
5245
|
+
x: d3_interpolateNumber(ka[1], kb[1])
|
5246
|
+
});
|
5247
|
+
} else if (kb[0] != 1 || kb[1] != 1) {
|
5248
|
+
s.push(s.pop() + "scale(" + kb + ")");
|
5249
|
+
}
|
5250
|
+
n = q.length;
|
5251
|
+
return function(t) {
|
5252
|
+
var i = -1, o;
|
5253
|
+
while (++i < n) s[(o = q[i]).i] = o.x(t);
|
5254
|
+
return s.join("");
|
5255
|
+
};
|
5256
|
+
}
|
5252
5257
|
function d3_uninterpolateNumber(a, b) {
|
5253
5258
|
b = b - (a = +a) ? 1 / (b - a) : 0;
|
5254
5259
|
return function(x) {
|
@@ -6222,10 +6227,12 @@ d3 = function() {
|
|
6222
6227
|
d3.layout.pack = function() {
|
6223
6228
|
var hierarchy = d3.layout.hierarchy().sort(d3_layout_packSort), padding = 0, size = [ 1, 1 ], radius;
|
6224
6229
|
function pack(d, i) {
|
6225
|
-
var nodes = hierarchy.call(this, d, i), root = nodes[0], w = size[0], h = size[1], r = radius
|
6230
|
+
var nodes = hierarchy.call(this, d, i), root = nodes[0], w = size[0], h = size[1], r = radius == null ? Math.sqrt : typeof radius === "function" ? radius : function() {
|
6231
|
+
return radius;
|
6232
|
+
};
|
6226
6233
|
root.x = root.y = 0;
|
6227
6234
|
d3_layout_treeVisitAfter(root, function(d) {
|
6228
|
-
d.r = r(d.value);
|
6235
|
+
d.r = +r(d.value);
|
6229
6236
|
});
|
6230
6237
|
d3_layout_treeVisitAfter(root, d3_layout_packSiblings);
|
6231
6238
|
if (padding) {
|
@@ -6248,7 +6255,7 @@ d3 = function() {
|
|
6248
6255
|
};
|
6249
6256
|
pack.radius = function(_) {
|
6250
6257
|
if (!arguments.length) return radius;
|
6251
|
-
radius = _;
|
6258
|
+
radius = _ == null || typeof _ === "function" ? _ : +_;
|
6252
6259
|
return pack;
|
6253
6260
|
};
|
6254
6261
|
pack.padding = function(_) {
|
@@ -7419,7 +7426,7 @@ d3 = function() {
|
|
7419
7426
|
d3.svg.symbolTypes = d3_svg_symbols.keys();
|
7420
7427
|
var d3_svg_symbolSqrt3 = Math.sqrt(3), d3_svg_symbolTan30 = Math.tan(30 * d3_radians);
|
7421
7428
|
function d3_transition(groups, id) {
|
7422
|
-
|
7429
|
+
d3_subclass(groups, d3_transitionPrototype);
|
7423
7430
|
groups.id = id;
|
7424
7431
|
return groups;
|
7425
7432
|
}
|
@@ -7438,7 +7445,7 @@ d3 = function() {
|
|
7438
7445
|
d3.transition.prototype = d3_transitionPrototype;
|
7439
7446
|
d3_transitionPrototype.select = function(selector) {
|
7440
7447
|
var id = this.id, subgroups = [], subgroup, subnode, node;
|
7441
|
-
|
7448
|
+
selector = d3_selection_selector(selector);
|
7442
7449
|
for (var j = -1, m = this.length; ++j < m; ) {
|
7443
7450
|
subgroups.push(subgroup = []);
|
7444
7451
|
for (var group = this[j], i = -1, n = group.length; ++i < n; ) {
|
@@ -7455,7 +7462,7 @@ d3 = function() {
|
|
7455
7462
|
};
|
7456
7463
|
d3_transitionPrototype.selectAll = function(selector) {
|
7457
7464
|
var id = this.id, subgroups = [], subgroup, subnodes, node, subnode, transition;
|
7458
|
-
|
7465
|
+
selector = d3_selection_selectorAll(selector);
|
7459
7466
|
for (var j = -1, m = this.length; ++j < m; ) {
|
7460
7467
|
for (var group = this[j], i = -1, n = group.length; ++i < n; ) {
|
7461
7468
|
if (node = group[i]) {
|
@@ -7506,7 +7513,7 @@ d3 = function() {
|
|
7506
7513
|
for (value in nameNS) this.attr(value, nameNS[value]);
|
7507
7514
|
return this;
|
7508
7515
|
}
|
7509
|
-
var interpolate =
|
7516
|
+
var interpolate = nameNS == "transform" ? d3_interpolateTransform : d3_interpolate, name = d3.ns.qualify(nameNS);
|
7510
7517
|
function attrNull() {
|
7511
7518
|
this.removeAttribute(name);
|
7512
7519
|
}
|
@@ -7557,14 +7564,13 @@ d3 = function() {
|
|
7557
7564
|
}
|
7558
7565
|
priority = "";
|
7559
7566
|
}
|
7560
|
-
var interpolate = d3_interpolateByName(name);
|
7561
7567
|
function styleNull() {
|
7562
7568
|
this.style.removeProperty(name);
|
7563
7569
|
}
|
7564
7570
|
function styleString(b) {
|
7565
7571
|
return b == null ? styleNull : (b += "", function() {
|
7566
7572
|
var a = d3_window.getComputedStyle(this, null).getPropertyValue(name), i;
|
7567
|
-
return a !== b && (i =
|
7573
|
+
return a !== b && (i = d3_interpolate(a, b), function(t) {
|
7568
7574
|
this.style.setProperty(name, i(t), priority);
|
7569
7575
|
});
|
7570
7576
|
});
|