d3_rails 3.2.2 → 3.2.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- 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
|
});
|