d3-rails 4.8.0 → 4.9.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +4 -1
- data/README.md +1 -1
- data/app/assets/javascripts/d3.js +289 -100
- data/app/assets/javascripts/d3.min.js +8 -8
- data/app/assets/javascripts/d3.v4.js +289 -100
- data/app/assets/javascripts/d3.v4.min.js +8 -8
- data/lib/d3/rails/version.rb +1 -1
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 91ac39ccf3a5acdc7fc25d05715474fab1cdef2a
|
4
|
+
data.tar.gz: 8b1cde1cdc3778b6495516762dd28e8cf302fda4
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 73f1e32459d289046ec3ff32afad9529458b85c8a9d2157841ee60b08e03f5a5113276ae3999aa392c7787ce8ab681f11e5b1ff38a0699d0b3258558d4cd5242
|
7
|
+
data.tar.gz: f6121e0e68000287d77ed57cb5ff9d2e6db53d8e04c1fd003abee93ebc33686bfd80babe2a904edb156e46b2cea1485d2e4d973c119f389c44e80740e50998a1
|
data/CHANGELOG.md
CHANGED
data/README.md
CHANGED
@@ -8,7 +8,7 @@ d3-rails provides D3 for Rails 3.1 and higher.
|
|
8
8
|
|
9
9
|
## Version
|
10
10
|
|
11
|
-
d3-rails comes with version 4.
|
11
|
+
d3-rails comes with version 4.9.0 of D3.js. The d3-rails version will
|
12
12
|
always mirror the version of D3. If you need a newer version of
|
13
13
|
d3-rails, see section Development (below).
|
14
14
|
|
@@ -1,11 +1,11 @@
|
|
1
|
-
// https://d3js.org Version 4.
|
1
|
+
// https://d3js.org Version 4.9.0. Copyright 2017 Mike Bostock.
|
2
2
|
(function (global, factory) {
|
3
3
|
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports) :
|
4
4
|
typeof define === 'function' && define.amd ? define(['exports'], factory) :
|
5
5
|
(factory((global.d3 = global.d3 || {})));
|
6
6
|
}(this, (function (exports) { 'use strict';
|
7
7
|
|
8
|
-
var version = "4.
|
8
|
+
var version = "4.9.0";
|
9
9
|
|
10
10
|
var ascending = function(a, b) {
|
11
11
|
return a < b ? -1 : a > b ? 1 : a >= b ? 0 : NaN;
|
@@ -567,15 +567,15 @@ var left = 4;
|
|
567
567
|
var epsilon = 1e-6;
|
568
568
|
|
569
569
|
function translateX(x) {
|
570
|
-
return "translate(" + x + ",0)";
|
570
|
+
return "translate(" + (x + 0.5) + ",0)";
|
571
571
|
}
|
572
572
|
|
573
573
|
function translateY(y) {
|
574
|
-
return "translate(0," + y + ")";
|
574
|
+
return "translate(0," + (y + 0.5) + ")";
|
575
575
|
}
|
576
576
|
|
577
577
|
function center(scale) {
|
578
|
-
var offset = scale.bandwidth() / 2;
|
578
|
+
var offset = Math.max(0, scale.bandwidth() - 1) / 2; // Adjust for 0.5px offset.
|
579
579
|
if (scale.round()) offset = Math.round(offset);
|
580
580
|
return function(d) {
|
581
581
|
return scale(d) + offset;
|
@@ -594,7 +594,7 @@ function axis(orient, scale) {
|
|
594
594
|
tickSizeOuter = 6,
|
595
595
|
tickPadding = 3,
|
596
596
|
k = orient === top || orient === left ? -1 : 1,
|
597
|
-
x
|
597
|
+
x = orient === left || orient === right ? "x" : "y",
|
598
598
|
transform = orient === top || orient === bottom ? translateX : translateY;
|
599
599
|
|
600
600
|
function axis(context) {
|
@@ -621,14 +621,11 @@ function axis(orient, scale) {
|
|
621
621
|
|
622
622
|
line = line.merge(tickEnter.append("line")
|
623
623
|
.attr("stroke", "#000")
|
624
|
-
.attr(x + "2", k * tickSizeInner)
|
625
|
-
.attr(y + "1", 0.5)
|
626
|
-
.attr(y + "2", 0.5));
|
624
|
+
.attr(x + "2", k * tickSizeInner));
|
627
625
|
|
628
626
|
text = text.merge(tickEnter.append("text")
|
629
627
|
.attr("fill", "#000")
|
630
628
|
.attr(x, k * spacing)
|
631
|
-
.attr(y, 0.5)
|
632
629
|
.attr("dy", orient === top ? "0em" : orient === bottom ? "0.71em" : "0.32em"));
|
633
630
|
|
634
631
|
if (context !== selection) {
|
@@ -1403,7 +1400,7 @@ var selection_attr = function(name, value) {
|
|
1403
1400
|
: (fullname.local ? attrConstantNS : attrConstant)))(fullname, value));
|
1404
1401
|
};
|
1405
1402
|
|
1406
|
-
var
|
1403
|
+
var defaultView = function(node) {
|
1407
1404
|
return (node.ownerDocument && node.ownerDocument.defaultView) // node is a Node
|
1408
1405
|
|| (node.document && node) // node is a Window
|
1409
1406
|
|| node.defaultView; // node is a Document
|
@@ -1430,17 +1427,19 @@ function styleFunction(name, value, priority) {
|
|
1430
1427
|
}
|
1431
1428
|
|
1432
1429
|
var selection_style = function(name, value, priority) {
|
1433
|
-
var node;
|
1434
1430
|
return arguments.length > 1
|
1435
1431
|
? this.each((value == null
|
1436
1432
|
? styleRemove : typeof value === "function"
|
1437
1433
|
? styleFunction
|
1438
1434
|
: styleConstant)(name, value, priority == null ? "" : priority))
|
1439
|
-
:
|
1440
|
-
.getComputedStyle(node, null)
|
1441
|
-
.getPropertyValue(name);
|
1435
|
+
: styleValue(this.node(), name);
|
1442
1436
|
};
|
1443
1437
|
|
1438
|
+
function styleValue(node, name) {
|
1439
|
+
return node.style.getPropertyValue(name)
|
1440
|
+
|| defaultView(node).getComputedStyle(node, null).getPropertyValue(name);
|
1441
|
+
}
|
1442
|
+
|
1444
1443
|
function propertyRemove(name) {
|
1445
1444
|
return function() {
|
1446
1445
|
delete this[name];
|
@@ -1649,13 +1648,13 @@ var selection_datum = function(value) {
|
|
1649
1648
|
};
|
1650
1649
|
|
1651
1650
|
function dispatchEvent(node, type, params) {
|
1652
|
-
var window
|
1653
|
-
event = window
|
1651
|
+
var window = defaultView(node),
|
1652
|
+
event = window.CustomEvent;
|
1654
1653
|
|
1655
|
-
if (event) {
|
1654
|
+
if (typeof event === "function") {
|
1656
1655
|
event = new event(type, params);
|
1657
1656
|
} else {
|
1658
|
-
event = window
|
1657
|
+
event = window.document.createEvent("Event");
|
1659
1658
|
if (params) event.initEvent(type, params.bubbles, params.cancelable), event.detail = params.detail;
|
1660
1659
|
else event.initEvent(type, false, false);
|
1661
1660
|
}
|
@@ -1838,8 +1837,11 @@ var drag = function() {
|
|
1838
1837
|
gestures = {},
|
1839
1838
|
listeners = dispatch("start", "drag", "end"),
|
1840
1839
|
active = 0,
|
1840
|
+
mousedownx,
|
1841
|
+
mousedowny,
|
1841
1842
|
mousemoving,
|
1842
|
-
touchending
|
1843
|
+
touchending,
|
1844
|
+
clickDistance2 = 0;
|
1843
1845
|
|
1844
1846
|
function drag(selection$$1) {
|
1845
1847
|
selection$$1
|
@@ -1858,12 +1860,17 @@ var drag = function() {
|
|
1858
1860
|
dragDisable(exports.event.view);
|
1859
1861
|
nopropagation();
|
1860
1862
|
mousemoving = false;
|
1863
|
+
mousedownx = exports.event.clientX;
|
1864
|
+
mousedowny = exports.event.clientY;
|
1861
1865
|
gesture("start");
|
1862
1866
|
}
|
1863
1867
|
|
1864
1868
|
function mousemoved() {
|
1865
1869
|
noevent();
|
1866
|
-
mousemoving
|
1870
|
+
if (!mousemoving) {
|
1871
|
+
var dx = exports.event.clientX - mousedownx, dy = exports.event.clientY - mousedowny;
|
1872
|
+
mousemoving = dx * dx + dy * dy > clickDistance2;
|
1873
|
+
}
|
1867
1874
|
gestures.mouse("drag");
|
1868
1875
|
}
|
1869
1876
|
|
@@ -1953,6 +1960,10 @@ var drag = function() {
|
|
1953
1960
|
return value === listeners ? drag : value;
|
1954
1961
|
};
|
1955
1962
|
|
1963
|
+
drag.clickDistance = function(_) {
|
1964
|
+
return arguments.length ? (clickDistance2 = (_ = +_) * _, drag) : Math.sqrt(clickDistance2);
|
1965
|
+
};
|
1966
|
+
|
1956
1967
|
return drag;
|
1957
1968
|
};
|
1958
1969
|
|
@@ -2701,7 +2712,7 @@ var interpolateValue = function(a, b) {
|
|
2701
2712
|
: b instanceof color ? interpolateRgb
|
2702
2713
|
: b instanceof Date ? date
|
2703
2714
|
: Array.isArray(b) ? array$1
|
2704
|
-
: isNaN(b) ? object
|
2715
|
+
: typeof b.valueOf !== "function" && typeof b.toString !== "function" || isNaN(b) ? object
|
2705
2716
|
: reinterpolate)(a, b);
|
2706
2717
|
};
|
2707
2718
|
|
@@ -3664,9 +3675,8 @@ function styleRemove$1(name, interpolate$$2) {
|
|
3664
3675
|
value10,
|
3665
3676
|
interpolate0;
|
3666
3677
|
return function() {
|
3667
|
-
var
|
3668
|
-
|
3669
|
-
value1 = (this.style.removeProperty(name), style.getPropertyValue(name));
|
3678
|
+
var value0 = styleValue(this, name),
|
3679
|
+
value1 = (this.style.removeProperty(name), styleValue(this, name));
|
3670
3680
|
return value0 === value1 ? null
|
3671
3681
|
: value0 === value00 && value1 === value10 ? interpolate0
|
3672
3682
|
: interpolate0 = interpolate$$2(value00 = value0, value10 = value1);
|
@@ -3683,7 +3693,7 @@ function styleConstant$1(name, interpolate$$2, value1) {
|
|
3683
3693
|
var value00,
|
3684
3694
|
interpolate0;
|
3685
3695
|
return function() {
|
3686
|
-
var value0 =
|
3696
|
+
var value0 = styleValue(this, name);
|
3687
3697
|
return value0 === value1 ? null
|
3688
3698
|
: value0 === value00 ? interpolate0
|
3689
3699
|
: interpolate0 = interpolate$$2(value00 = value0, value1);
|
@@ -3695,10 +3705,9 @@ function styleFunction$1(name, interpolate$$2, value) {
|
|
3695
3705
|
value10,
|
3696
3706
|
interpolate0;
|
3697
3707
|
return function() {
|
3698
|
-
var
|
3699
|
-
value0 = style.getPropertyValue(name),
|
3708
|
+
var value0 = styleValue(this, name),
|
3700
3709
|
value1 = value(this);
|
3701
|
-
if (value1 == null) value1 = (this.style.removeProperty(name),
|
3710
|
+
if (value1 == null) value1 = (this.style.removeProperty(name), styleValue(this, name));
|
3702
3711
|
return value0 === value1 ? null
|
3703
3712
|
: value0 === value00 && value1 === value10 ? interpolate0
|
3704
3713
|
: interpolate0 = interpolate$$2(value00 = value0, value10 = value1);
|
@@ -10966,7 +10975,6 @@ var slice$3 = [].slice;
|
|
10966
10975
|
var noabort = {};
|
10967
10976
|
|
10968
10977
|
function Queue(size) {
|
10969
|
-
if (!(size >= 1)) throw new Error;
|
10970
10978
|
this._size = size;
|
10971
10979
|
this._call =
|
10972
10980
|
this._error = null;
|
@@ -10981,7 +10989,8 @@ function Queue(size) {
|
|
10981
10989
|
Queue.prototype = queue.prototype = {
|
10982
10990
|
constructor: Queue,
|
10983
10991
|
defer: function(callback) {
|
10984
|
-
if (typeof callback !== "function"
|
10992
|
+
if (typeof callback !== "function") throw new Error("invalid callback");
|
10993
|
+
if (this._call) throw new Error("defer after await");
|
10985
10994
|
if (this._error != null) return this;
|
10986
10995
|
var t = slice$3.call(arguments, 1);
|
10987
10996
|
t.push(callback);
|
@@ -10994,13 +11003,15 @@ Queue.prototype = queue.prototype = {
|
|
10994
11003
|
return this;
|
10995
11004
|
},
|
10996
11005
|
await: function(callback) {
|
10997
|
-
if (typeof callback !== "function"
|
11006
|
+
if (typeof callback !== "function") throw new Error("invalid callback");
|
11007
|
+
if (this._call) throw new Error("multiple await");
|
10998
11008
|
this._call = function(error, results) { callback.apply(null, [error].concat(results)); };
|
10999
11009
|
maybeNotify(this);
|
11000
11010
|
return this;
|
11001
11011
|
},
|
11002
11012
|
awaitAll: function(callback) {
|
11003
|
-
if (typeof callback !== "function"
|
11013
|
+
if (typeof callback !== "function") throw new Error("invalid callback");
|
11014
|
+
if (this._call) throw new Error("multiple await");
|
11004
11015
|
this._call = callback;
|
11005
11016
|
maybeNotify(this);
|
11006
11017
|
return this;
|
@@ -11076,66 +11087,108 @@ function maybeNotify(q) {
|
|
11076
11087
|
}
|
11077
11088
|
|
11078
11089
|
function queue(concurrency) {
|
11079
|
-
|
11090
|
+
if (concurrency == null) concurrency = Infinity;
|
11091
|
+
else if (!((concurrency = +concurrency) >= 1)) throw new Error("invalid concurrency");
|
11092
|
+
return new Queue(concurrency);
|
11080
11093
|
}
|
11081
11094
|
|
11082
|
-
var
|
11083
|
-
|
11084
|
-
max = max == null ? 1 : +max;
|
11085
|
-
if (arguments.length === 1) max = min, min = 0;
|
11086
|
-
else max -= min;
|
11087
|
-
return function() {
|
11088
|
-
return Math.random() * max + min;
|
11089
|
-
};
|
11095
|
+
var defaultSource$1 = function() {
|
11096
|
+
return Math.random();
|
11090
11097
|
};
|
11091
11098
|
|
11092
|
-
var
|
11093
|
-
|
11094
|
-
|
11095
|
-
|
11096
|
-
|
11097
|
-
|
11099
|
+
var uniform = ((function sourceRandomUniform(source) {
|
11100
|
+
function randomUniform(min, max) {
|
11101
|
+
min = min == null ? 0 : +min;
|
11102
|
+
max = max == null ? 1 : +max;
|
11103
|
+
if (arguments.length === 1) max = min, min = 0;
|
11104
|
+
else max -= min;
|
11105
|
+
return function() {
|
11106
|
+
return source() * max + min;
|
11107
|
+
};
|
11108
|
+
}
|
11098
11109
|
|
11099
|
-
|
11100
|
-
if (x != null) y = x, x = null;
|
11110
|
+
randomUniform.source = sourceRandomUniform;
|
11101
11111
|
|
11102
|
-
|
11103
|
-
|
11104
|
-
x = Math.random() * 2 - 1;
|
11105
|
-
y = Math.random() * 2 - 1;
|
11106
|
-
r = x * x + y * y;
|
11107
|
-
} while (!r || r > 1);
|
11112
|
+
return randomUniform;
|
11113
|
+
}))(defaultSource$1);
|
11108
11114
|
|
11109
|
-
|
11110
|
-
|
11111
|
-
|
11115
|
+
var normal = ((function sourceRandomNormal(source) {
|
11116
|
+
function randomNormal(mu, sigma) {
|
11117
|
+
var x, r;
|
11118
|
+
mu = mu == null ? 0 : +mu;
|
11119
|
+
sigma = sigma == null ? 1 : +sigma;
|
11120
|
+
return function() {
|
11121
|
+
var y;
|
11112
11122
|
|
11113
|
-
|
11114
|
-
|
11115
|
-
return function() {
|
11116
|
-
return Math.exp(randomNormal());
|
11117
|
-
};
|
11118
|
-
};
|
11123
|
+
// If available, use the second previously-generated uniform random.
|
11124
|
+
if (x != null) y = x, x = null;
|
11119
11125
|
|
11120
|
-
|
11121
|
-
|
11122
|
-
|
11123
|
-
|
11124
|
-
|
11125
|
-
};
|
11126
|
+
// Otherwise, generate a new x and y.
|
11127
|
+
else do {
|
11128
|
+
x = source() * 2 - 1;
|
11129
|
+
y = source() * 2 - 1;
|
11130
|
+
r = x * x + y * y;
|
11131
|
+
} while (!r || r > 1);
|
11126
11132
|
|
11127
|
-
|
11128
|
-
|
11129
|
-
|
11130
|
-
return randomIrwinHall() / n;
|
11131
|
-
};
|
11132
|
-
};
|
11133
|
+
return mu + sigma * y * Math.sqrt(-2 * Math.log(r) / r);
|
11134
|
+
};
|
11135
|
+
}
|
11133
11136
|
|
11134
|
-
|
11135
|
-
|
11136
|
-
|
11137
|
-
|
11138
|
-
|
11137
|
+
randomNormal.source = sourceRandomNormal;
|
11138
|
+
|
11139
|
+
return randomNormal;
|
11140
|
+
}))(defaultSource$1);
|
11141
|
+
|
11142
|
+
var logNormal = ((function sourceRandomLogNormal(source) {
|
11143
|
+
function randomLogNormal() {
|
11144
|
+
var randomNormal = normal.source(source).apply(this, arguments);
|
11145
|
+
return function() {
|
11146
|
+
return Math.exp(randomNormal());
|
11147
|
+
};
|
11148
|
+
}
|
11149
|
+
|
11150
|
+
randomLogNormal.source = sourceRandomLogNormal;
|
11151
|
+
|
11152
|
+
return randomLogNormal;
|
11153
|
+
}))(defaultSource$1);
|
11154
|
+
|
11155
|
+
var irwinHall = ((function sourceRandomIrwinHall(source) {
|
11156
|
+
function randomIrwinHall(n) {
|
11157
|
+
return function() {
|
11158
|
+
for (var sum = 0, i = 0; i < n; ++i) sum += source();
|
11159
|
+
return sum;
|
11160
|
+
};
|
11161
|
+
}
|
11162
|
+
|
11163
|
+
randomIrwinHall.source = sourceRandomIrwinHall;
|
11164
|
+
|
11165
|
+
return randomIrwinHall;
|
11166
|
+
}))(defaultSource$1);
|
11167
|
+
|
11168
|
+
var bates = ((function sourceRandomBates(source) {
|
11169
|
+
function randomBates(n) {
|
11170
|
+
var randomIrwinHall = irwinHall.source(source)(n);
|
11171
|
+
return function() {
|
11172
|
+
return randomIrwinHall() / n;
|
11173
|
+
};
|
11174
|
+
}
|
11175
|
+
|
11176
|
+
randomBates.source = sourceRandomBates;
|
11177
|
+
|
11178
|
+
return randomBates;
|
11179
|
+
}))(defaultSource$1);
|
11180
|
+
|
11181
|
+
var exponential$1 = ((function sourceRandomExponential(source) {
|
11182
|
+
function randomExponential(lambda) {
|
11183
|
+
return function() {
|
11184
|
+
return -Math.log(1 - source()) / lambda;
|
11185
|
+
};
|
11186
|
+
}
|
11187
|
+
|
11188
|
+
randomExponential.source = sourceRandomExponential;
|
11189
|
+
|
11190
|
+
return randomExponential;
|
11191
|
+
}))(defaultSource$1);
|
11139
11192
|
|
11140
11193
|
var request = function(url, callback) {
|
11141
11194
|
var request,
|
@@ -11643,17 +11696,39 @@ function linearish(scale) {
|
|
11643
11696
|
};
|
11644
11697
|
|
11645
11698
|
scale.nice = function(count) {
|
11699
|
+
if (count == null) count = 10;
|
11700
|
+
|
11646
11701
|
var d = domain(),
|
11647
|
-
|
11648
|
-
|
11649
|
-
start = d[
|
11650
|
-
stop = d[
|
11651
|
-
step
|
11652
|
-
|
11653
|
-
if (
|
11654
|
-
step =
|
11655
|
-
|
11656
|
-
|
11702
|
+
i0 = 0,
|
11703
|
+
i1 = d.length - 1,
|
11704
|
+
start = d[i0],
|
11705
|
+
stop = d[i1],
|
11706
|
+
step;
|
11707
|
+
|
11708
|
+
if (stop < start) {
|
11709
|
+
step = start, start = stop, stop = step;
|
11710
|
+
step = i0, i0 = i1, i1 = step;
|
11711
|
+
}
|
11712
|
+
|
11713
|
+
step = tickIncrement(start, stop, count);
|
11714
|
+
|
11715
|
+
if (step > 0) {
|
11716
|
+
start = Math.floor(start / step) * step;
|
11717
|
+
stop = Math.ceil(stop / step) * step;
|
11718
|
+
step = tickIncrement(start, stop, count);
|
11719
|
+
} else if (step < 0) {
|
11720
|
+
start = Math.ceil(start * step) / step;
|
11721
|
+
stop = Math.floor(stop * step) / step;
|
11722
|
+
step = tickIncrement(start, stop, count);
|
11723
|
+
}
|
11724
|
+
|
11725
|
+
if (step > 0) {
|
11726
|
+
d[i0] = Math.floor(start / step) * step;
|
11727
|
+
d[i1] = Math.ceil(stop / step) * step;
|
11728
|
+
domain(d);
|
11729
|
+
} else if (step < 0) {
|
11730
|
+
d[i0] = Math.ceil(start * step) / step;
|
11731
|
+
d[i1] = Math.floor(stop * step) / step;
|
11657
11732
|
domain(d);
|
11658
11733
|
}
|
11659
11734
|
|
@@ -13718,6 +13793,92 @@ var radialArea = function() {
|
|
13718
13793
|
return a;
|
13719
13794
|
};
|
13720
13795
|
|
13796
|
+
var slice$5 = Array.prototype.slice;
|
13797
|
+
|
13798
|
+
function linkSource(d) {
|
13799
|
+
return d.source;
|
13800
|
+
}
|
13801
|
+
|
13802
|
+
function linkTarget(d) {
|
13803
|
+
return d.target;
|
13804
|
+
}
|
13805
|
+
|
13806
|
+
function link$2(curve) {
|
13807
|
+
var source = linkSource,
|
13808
|
+
target = linkTarget,
|
13809
|
+
x$$1 = x$3,
|
13810
|
+
y$$1 = y$3,
|
13811
|
+
context = null;
|
13812
|
+
|
13813
|
+
function link() {
|
13814
|
+
var buffer, argv = slice$5.call(arguments), s = source.apply(this, argv), t = target.apply(this, argv);
|
13815
|
+
if (!context) context = buffer = path();
|
13816
|
+
curve(context, +x$$1.apply(this, (argv[0] = s, argv)), +y$$1.apply(this, argv), +x$$1.apply(this, (argv[0] = t, argv)), +y$$1.apply(this, argv));
|
13817
|
+
if (buffer) return context = null, buffer + "" || null;
|
13818
|
+
}
|
13819
|
+
|
13820
|
+
link.source = function(_) {
|
13821
|
+
return arguments.length ? (source = _, link) : source;
|
13822
|
+
};
|
13823
|
+
|
13824
|
+
link.target = function(_) {
|
13825
|
+
return arguments.length ? (target = _, link) : target;
|
13826
|
+
};
|
13827
|
+
|
13828
|
+
link.x = function(_) {
|
13829
|
+
return arguments.length ? (x$$1 = typeof _ === "function" ? _ : constant$10(+_), link) : x$$1;
|
13830
|
+
};
|
13831
|
+
|
13832
|
+
link.y = function(_) {
|
13833
|
+
return arguments.length ? (y$$1 = typeof _ === "function" ? _ : constant$10(+_), link) : y$$1;
|
13834
|
+
};
|
13835
|
+
|
13836
|
+
link.context = function(_) {
|
13837
|
+
return arguments.length ? ((context = _ == null ? null : _), link) : context;
|
13838
|
+
};
|
13839
|
+
|
13840
|
+
return link;
|
13841
|
+
}
|
13842
|
+
|
13843
|
+
function curveHorizontal(context, x0, y0, x1, y1) {
|
13844
|
+
context.moveTo(x0, y0);
|
13845
|
+
context.bezierCurveTo(x0 = (x0 + x1) / 2, y0, x0, y1, x1, y1);
|
13846
|
+
}
|
13847
|
+
|
13848
|
+
function curveVertical(context, x0, y0, x1, y1) {
|
13849
|
+
context.moveTo(x0, y0);
|
13850
|
+
context.bezierCurveTo(x0, y0 = (y0 + y1) / 2, x1, y0, x1, y1);
|
13851
|
+
}
|
13852
|
+
|
13853
|
+
function curveRadial$1(context, x0, y0, x1, y1) {
|
13854
|
+
var p0 = cartesian$1(x0, y0),
|
13855
|
+
p1 = cartesian$1(x0, y0 = (y0 + y1) / 2),
|
13856
|
+
p2 = cartesian$1(x1, y0),
|
13857
|
+
p3 = cartesian$1(x1, y1);
|
13858
|
+
context.moveTo(p0[0], p0[1]);
|
13859
|
+
context.bezierCurveTo(p1[0], p1[1], p2[0], p2[1], p3[0], p3[1]);
|
13860
|
+
}
|
13861
|
+
|
13862
|
+
function linkHorizontal() {
|
13863
|
+
return link$2(curveHorizontal);
|
13864
|
+
}
|
13865
|
+
|
13866
|
+
function linkVertical() {
|
13867
|
+
return link$2(curveVertical);
|
13868
|
+
}
|
13869
|
+
|
13870
|
+
function linkRadial() {
|
13871
|
+
var l = link$2(curveRadial$1);
|
13872
|
+
l.angle = l.x, delete l.x;
|
13873
|
+
l.radius = l.y, delete l.y;
|
13874
|
+
return l;
|
13875
|
+
}
|
13876
|
+
|
13877
|
+
function cartesian$1(x$$1, y$$1) {
|
13878
|
+
var angle = (x$$1 - 90) / 180 * Math.PI, radius = y$$1;
|
13879
|
+
return [radius * Math.cos(angle), radius * Math.sin(angle)];
|
13880
|
+
}
|
13881
|
+
|
13721
13882
|
var circle$2 = {
|
13722
13883
|
draw: function(context, size) {
|
13723
13884
|
var r = Math.sqrt(size / pi$4);
|
@@ -14699,13 +14860,11 @@ function stepAfter(context) {
|
|
14699
14860
|
return new Step(context, 1);
|
14700
14861
|
}
|
14701
14862
|
|
14702
|
-
var slice$5 = Array.prototype.slice;
|
14703
|
-
|
14704
14863
|
var none$1 = function(series, order) {
|
14705
14864
|
if (!((n = series.length) > 1)) return;
|
14706
|
-
for (var i = 1, s0, s1 = series[order[0]], n, m = s1.length; i < n; ++i) {
|
14865
|
+
for (var i = 1, j, s0, s1 = series[order[0]], n, m = s1.length; i < n; ++i) {
|
14707
14866
|
s0 = s1, s1 = series[order[i]];
|
14708
|
-
for (
|
14867
|
+
for (j = 0; j < m; ++j) {
|
14709
14868
|
s1[j][1] += s1[j][0] = isNaN(s0[j][1]) ? s0[j][0] : s0[j][1];
|
14710
14869
|
}
|
14711
14870
|
}
|
@@ -14779,6 +14938,21 @@ var expand = function(series, order) {
|
|
14779
14938
|
none$1(series, order);
|
14780
14939
|
};
|
14781
14940
|
|
14941
|
+
var diverging = function(series, order) {
|
14942
|
+
if (!((n = series.length) > 1)) return;
|
14943
|
+
for (var i, j = 0, d, dy, yp, yn, n, m = series[order[0]].length; j < m; ++j) {
|
14944
|
+
for (yp = yn = 0, i = 0; i < n; ++i) {
|
14945
|
+
if ((dy = (d = series[order[i]][j])[1] - d[0]) >= 0) {
|
14946
|
+
d[0] = yp, d[1] = yp += dy;
|
14947
|
+
} else if (dy < 0) {
|
14948
|
+
d[1] = yn, d[0] = yn += dy;
|
14949
|
+
} else {
|
14950
|
+
d[0] = yp;
|
14951
|
+
}
|
14952
|
+
}
|
14953
|
+
}
|
14954
|
+
};
|
14955
|
+
|
14782
14956
|
var silhouette = function(series, order) {
|
14783
14957
|
if (!((n = series.length) > 0)) return;
|
14784
14958
|
for (var j = 0, s0 = series[order[0]], n, m = s0.length; j < m; ++j) {
|
@@ -15952,7 +16126,8 @@ var zoom = function() {
|
|
15952
16126
|
touchstarting,
|
15953
16127
|
touchending,
|
15954
16128
|
touchDelay = 500,
|
15955
|
-
wheelDelay = 150
|
16129
|
+
wheelDelay = 150,
|
16130
|
+
clickDistance2 = 0;
|
15956
16131
|
|
15957
16132
|
function zoom(selection$$1) {
|
15958
16133
|
selection$$1
|
@@ -16142,7 +16317,9 @@ var zoom = function() {
|
|
16142
16317
|
if (touchending || !filter.apply(this, arguments)) return;
|
16143
16318
|
var g = gesture(this, arguments),
|
16144
16319
|
v = select(exports.event.view).on("mousemove.zoom", mousemoved, true).on("mouseup.zoom", mouseupped, true),
|
16145
|
-
p = mouse(this)
|
16320
|
+
p = mouse(this),
|
16321
|
+
x0 = exports.event.clientX,
|
16322
|
+
y0 = exports.event.clientY;
|
16146
16323
|
|
16147
16324
|
dragDisable(exports.event.view);
|
16148
16325
|
nopropagation$2();
|
@@ -16152,7 +16329,10 @@ var zoom = function() {
|
|
16152
16329
|
|
16153
16330
|
function mousemoved() {
|
16154
16331
|
noevent$2();
|
16155
|
-
g.moved
|
16332
|
+
if (!g.moved) {
|
16333
|
+
var dx = exports.event.clientX - x0, dy = exports.event.clientY - y0;
|
16334
|
+
g.moved = dx * dx + dy * dy > clickDistance2;
|
16335
|
+
}
|
16156
16336
|
g.zoom("mouse", constrain(translate(g.that.__zoom, g.mouse[0] = mouse(g.that), g.mouse[1]), g.extent));
|
16157
16337
|
}
|
16158
16338
|
|
@@ -16284,6 +16464,10 @@ var zoom = function() {
|
|
16284
16464
|
return value === listeners ? zoom : value;
|
16285
16465
|
};
|
16286
16466
|
|
16467
|
+
zoom.clickDistance = function(_) {
|
16468
|
+
return arguments.length ? (clickDistance2 = (_ = +_) * _, zoom) : Math.sqrt(clickDistance2);
|
16469
|
+
};
|
16470
|
+
|
16287
16471
|
return zoom;
|
16288
16472
|
};
|
16289
16473
|
|
@@ -16543,9 +16727,10 @@ exports.selectAll = selectAll;
|
|
16543
16727
|
exports.selection = selection;
|
16544
16728
|
exports.selector = selector;
|
16545
16729
|
exports.selectorAll = selectorAll;
|
16730
|
+
exports.style = styleValue;
|
16546
16731
|
exports.touch = touch;
|
16547
16732
|
exports.touches = touches;
|
16548
|
-
exports.window =
|
16733
|
+
exports.window = defaultView;
|
16549
16734
|
exports.customEvent = customEvent;
|
16550
16735
|
exports.arc = arc;
|
16551
16736
|
exports.area = area$2;
|
@@ -16553,6 +16738,9 @@ exports.line = line;
|
|
16553
16738
|
exports.pie = pie;
|
16554
16739
|
exports.radialArea = radialArea;
|
16555
16740
|
exports.radialLine = radialLine$1;
|
16741
|
+
exports.linkHorizontal = linkHorizontal;
|
16742
|
+
exports.linkVertical = linkVertical;
|
16743
|
+
exports.linkRadial = linkRadial;
|
16556
16744
|
exports.symbol = symbol;
|
16557
16745
|
exports.symbols = symbols;
|
16558
16746
|
exports.symbolCircle = circle$2;
|
@@ -16582,6 +16770,7 @@ exports.curveStepAfter = stepAfter;
|
|
16582
16770
|
exports.curveStepBefore = stepBefore;
|
16583
16771
|
exports.stack = stack;
|
16584
16772
|
exports.stackOffsetExpand = expand;
|
16773
|
+
exports.stackOffsetDiverging = diverging;
|
16585
16774
|
exports.stackOffsetNone = none$1;
|
16586
16775
|
exports.stackOffsetSilhouette = silhouette;
|
16587
16776
|
exports.stackOffsetWiggle = wiggle;
|