d3-rails 5.9.2 → 5.16.0
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 +4 -4
- data/CHANGELOG.md +3 -0
- data/README.md +1 -1
- data/app/assets/javascripts/d3.js +1134 -859
- data/app/assets/javascripts/d3.min.js +2 -2
- data/app/assets/javascripts/d3.v5.js +1134 -859
- data/app/assets/javascripts/d3.v5.min.js +2 -2
- data/lib/d3/rails/version.rb +1 -1
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 0ff8d63d744cc023158964833b855ef61551dcafc41c971cf411b1bc1135d4a2
|
4
|
+
data.tar.gz: 612543175ff36af31c6222e9a557189c2118ba707b6a86ce2c252fceba339390
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6791164a040b0e4006880d99060812d6d2e508a1340b4f51600ffa91b3d12a3ebbba066def1aba3857bf2a668f061044a9ab10318140150ebc64dd88a7a16b7d
|
7
|
+
data.tar.gz: 9774347504caedb8d86c2eb3d62dd59b3b4cb5e33dc2bbde9262ca2b118abf572476fa4a26e1b18cdb05216db7dfd6c58b0b2180e04ea5281fbe3c3210cee391
|
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 5.
|
11
|
+
d3-rails comes with version 5.16.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 v5.
|
1
|
+
// https://d3js.org v5.16.0 Copyright 2020 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
|
-
(factory(
|
6
|
-
}(this,
|
5
|
+
(global = global || self, factory(global.d3 = global.d3 || {}));
|
6
|
+
}(this, function (exports) { 'use strict';
|
7
7
|
|
8
|
-
var version = "5.
|
8
|
+
var version = "5.16.0";
|
9
9
|
|
10
10
|
function ascending(a, b) {
|
11
11
|
return a < b ? -1 : a > b ? 1 : a >= b ? 0 : NaN;
|
@@ -737,7 +737,7 @@ var noop = {value: function() {}};
|
|
737
737
|
|
738
738
|
function dispatch() {
|
739
739
|
for (var i = 0, n = arguments.length, _ = {}, t; i < n; ++i) {
|
740
|
-
if (!(t = arguments[i] + "") || (t in _)) throw new Error("illegal type: " + t);
|
740
|
+
if (!(t = arguments[i] + "") || (t in _) || /[\s.]/.test(t)) throw new Error("illegal type: " + t);
|
741
741
|
_[t] = [];
|
742
742
|
}
|
743
743
|
return new Dispatch(_);
|
@@ -1080,9 +1080,9 @@ function selection_join(onenter, onupdate, onexit) {
|
|
1080
1080
|
return enter && update ? enter.merge(update).order() : update;
|
1081
1081
|
}
|
1082
1082
|
|
1083
|
-
function selection_merge(selection
|
1083
|
+
function selection_merge(selection) {
|
1084
1084
|
|
1085
|
-
for (var groups0 = this._groups, groups1 = selection
|
1085
|
+
for (var groups0 = this._groups, groups1 = selection._groups, m0 = groups0.length, m1 = groups1.length, m = Math.min(m0, m1), merges = new Array(m0), j = 0; j < m; ++j) {
|
1086
1086
|
for (var group0 = groups0[j], group1 = groups1[j], n = group0.length, merge = merges[j] = new Array(n), node, i = 0; i < n; ++i) {
|
1087
1087
|
if (node = group0[i] || group1[i]) {
|
1088
1088
|
merge[i] = node;
|
@@ -1478,11 +1478,13 @@ function selection_remove() {
|
|
1478
1478
|
}
|
1479
1479
|
|
1480
1480
|
function selection_cloneShallow() {
|
1481
|
-
|
1481
|
+
var clone = this.cloneNode(false), parent = this.parentNode;
|
1482
|
+
return parent ? parent.insertBefore(clone, this.nextSibling) : clone;
|
1482
1483
|
}
|
1483
1484
|
|
1484
1485
|
function selection_cloneDeep() {
|
1485
|
-
|
1486
|
+
var clone = this.cloneNode(true), parent = this.parentNode;
|
1487
|
+
return parent ? parent.insertBefore(clone, this.nextSibling) : clone;
|
1486
1488
|
}
|
1487
1489
|
|
1488
1490
|
function selection_clone(deep) {
|
@@ -1785,9 +1787,9 @@ function noevent() {
|
|
1785
1787
|
|
1786
1788
|
function dragDisable(view) {
|
1787
1789
|
var root = view.document.documentElement,
|
1788
|
-
selection
|
1790
|
+
selection = select(view).on("dragstart.drag", noevent, true);
|
1789
1791
|
if ("onselectstart" in root) {
|
1790
|
-
selection
|
1792
|
+
selection.on("selectstart.drag", noevent, true);
|
1791
1793
|
} else {
|
1792
1794
|
root.__noselect = root.style.MozUserSelect;
|
1793
1795
|
root.style.MozUserSelect = "none";
|
@@ -1796,13 +1798,13 @@ function dragDisable(view) {
|
|
1796
1798
|
|
1797
1799
|
function yesdrag(view, noclick) {
|
1798
1800
|
var root = view.document.documentElement,
|
1799
|
-
selection
|
1801
|
+
selection = select(view).on("dragstart.drag", null);
|
1800
1802
|
if (noclick) {
|
1801
|
-
selection
|
1802
|
-
setTimeout(function() { selection
|
1803
|
+
selection.on("click.drag", noevent, true);
|
1804
|
+
setTimeout(function() { selection.on("click.drag", null); }, 0);
|
1803
1805
|
}
|
1804
1806
|
if ("onselectstart" in root) {
|
1805
|
-
selection
|
1807
|
+
selection.on("selectstart.drag", null);
|
1806
1808
|
} else {
|
1807
1809
|
root.style.MozUserSelect = root.__noselect;
|
1808
1810
|
delete root.__noselect;
|
@@ -1835,7 +1837,7 @@ DragEvent.prototype.on = function() {
|
|
1835
1837
|
|
1836
1838
|
// Ignore right-click, since that should open the context menu.
|
1837
1839
|
function defaultFilter() {
|
1838
|
-
return !exports.event.button;
|
1840
|
+
return !exports.event.ctrlKey && !exports.event.button;
|
1839
1841
|
}
|
1840
1842
|
|
1841
1843
|
function defaultContainer() {
|
@@ -1847,7 +1849,7 @@ function defaultSubject(d) {
|
|
1847
1849
|
}
|
1848
1850
|
|
1849
1851
|
function defaultTouchable() {
|
1850
|
-
return "ontouchstart" in this;
|
1852
|
+
return navigator.maxTouchPoints || ("ontouchstart" in this);
|
1851
1853
|
}
|
1852
1854
|
|
1853
1855
|
function drag() {
|
@@ -1864,8 +1866,8 @@ function drag() {
|
|
1864
1866
|
touchending,
|
1865
1867
|
clickDistance2 = 0;
|
1866
1868
|
|
1867
|
-
function drag(selection
|
1868
|
-
selection
|
1869
|
+
function drag(selection) {
|
1870
|
+
selection
|
1869
1871
|
.on("mousedown.drag", mousedowned)
|
1870
1872
|
.filter(touchable)
|
1871
1873
|
.on("touchstart.drag", touchstarted)
|
@@ -1906,12 +1908,12 @@ function drag() {
|
|
1906
1908
|
|
1907
1909
|
function touchstarted() {
|
1908
1910
|
if (!filter.apply(this, arguments)) return;
|
1909
|
-
var touches
|
1911
|
+
var touches = exports.event.changedTouches,
|
1910
1912
|
c = container.apply(this, arguments),
|
1911
|
-
n = touches
|
1913
|
+
n = touches.length, i, gesture;
|
1912
1914
|
|
1913
1915
|
for (i = 0; i < n; ++i) {
|
1914
|
-
if (gesture = beforestart(touches
|
1916
|
+
if (gesture = beforestart(touches[i].identifier, c, touch, this, arguments)) {
|
1915
1917
|
nopropagation();
|
1916
1918
|
gesture("start");
|
1917
1919
|
}
|
@@ -1919,11 +1921,11 @@ function drag() {
|
|
1919
1921
|
}
|
1920
1922
|
|
1921
1923
|
function touchmoved() {
|
1922
|
-
var touches
|
1923
|
-
n = touches
|
1924
|
+
var touches = exports.event.changedTouches,
|
1925
|
+
n = touches.length, i, gesture;
|
1924
1926
|
|
1925
1927
|
for (i = 0; i < n; ++i) {
|
1926
|
-
if (gesture = gestures[touches
|
1928
|
+
if (gesture = gestures[touches[i].identifier]) {
|
1927
1929
|
noevent();
|
1928
1930
|
gesture("drag");
|
1929
1931
|
}
|
@@ -1931,21 +1933,21 @@ function drag() {
|
|
1931
1933
|
}
|
1932
1934
|
|
1933
1935
|
function touchended() {
|
1934
|
-
var touches
|
1935
|
-
n = touches
|
1936
|
+
var touches = exports.event.changedTouches,
|
1937
|
+
n = touches.length, i, gesture;
|
1936
1938
|
|
1937
1939
|
if (touchending) clearTimeout(touchending);
|
1938
1940
|
touchending = setTimeout(function() { touchending = null; }, 500); // Ghost clicks are delayed!
|
1939
1941
|
for (i = 0; i < n; ++i) {
|
1940
|
-
if (gesture = gestures[touches
|
1942
|
+
if (gesture = gestures[touches[i].identifier]) {
|
1941
1943
|
nopropagation();
|
1942
1944
|
gesture("end");
|
1943
1945
|
}
|
1944
1946
|
}
|
1945
1947
|
}
|
1946
1948
|
|
1947
|
-
function beforestart(id, container, point
|
1948
|
-
var p = point
|
1949
|
+
function beforestart(id, container, point, that, args) {
|
1950
|
+
var p = point(container, id), s, dx, dy,
|
1949
1951
|
sublisteners = listeners.copy();
|
1950
1952
|
|
1951
1953
|
if (!customEvent(new DragEvent(drag, "beforestart", s, id, active, p[0], p[1], 0, 0, sublisteners), function() {
|
@@ -1960,7 +1962,7 @@ function drag() {
|
|
1960
1962
|
switch (type) {
|
1961
1963
|
case "start": gestures[id] = gesture, n = active++; break;
|
1962
1964
|
case "end": delete gestures[id], --active; // nobreak
|
1963
|
-
case "drag": p = point
|
1965
|
+
case "drag": p = point(container, id), n = active; break;
|
1964
1966
|
}
|
1965
1967
|
customEvent(new DragEvent(drag, type, s, id, n, p[0] + dx, p[1] + dy, p[0] - p0[0], p[1] - p0[1], sublisteners), sublisteners.apply, sublisteners, [type, that, args]);
|
1966
1968
|
};
|
@@ -2013,8 +2015,7 @@ var brighter = 1 / darker;
|
|
2013
2015
|
var reI = "\\s*([+-]?\\d+)\\s*",
|
2014
2016
|
reN = "\\s*([+-]?\\d*\\.?\\d+(?:[eE][+-]?\\d+)?)\\s*",
|
2015
2017
|
reP = "\\s*([+-]?\\d*\\.?\\d+(?:[eE][+-]?\\d+)?)%\\s*",
|
2016
|
-
|
2017
|
-
reHex6 = /^#([0-9a-f]{6})$/,
|
2018
|
+
reHex = /^#([0-9a-f]{3,8})$/,
|
2018
2019
|
reRgbInteger = new RegExp("^rgb\\(" + [reI, reI, reI] + "\\)$"),
|
2019
2020
|
reRgbPercent = new RegExp("^rgb\\(" + [reP, reP, reP] + "\\)$"),
|
2020
2021
|
reRgbaInteger = new RegExp("^rgba\\(" + [reI, reI, reI, reN] + "\\)$"),
|
@@ -2174,29 +2175,46 @@ var named = {
|
|
2174
2175
|
};
|
2175
2176
|
|
2176
2177
|
define(Color, color, {
|
2178
|
+
copy: function(channels) {
|
2179
|
+
return Object.assign(new this.constructor, this, channels);
|
2180
|
+
},
|
2177
2181
|
displayable: function() {
|
2178
2182
|
return this.rgb().displayable();
|
2179
2183
|
},
|
2180
|
-
hex:
|
2181
|
-
|
2182
|
-
|
2183
|
-
|
2184
|
-
|
2185
|
-
}
|
2184
|
+
hex: color_formatHex, // Deprecated! Use color.formatHex.
|
2185
|
+
formatHex: color_formatHex,
|
2186
|
+
formatHsl: color_formatHsl,
|
2187
|
+
formatRgb: color_formatRgb,
|
2188
|
+
toString: color_formatRgb
|
2186
2189
|
});
|
2187
2190
|
|
2191
|
+
function color_formatHex() {
|
2192
|
+
return this.rgb().formatHex();
|
2193
|
+
}
|
2194
|
+
|
2195
|
+
function color_formatHsl() {
|
2196
|
+
return hslConvert(this).formatHsl();
|
2197
|
+
}
|
2198
|
+
|
2199
|
+
function color_formatRgb() {
|
2200
|
+
return this.rgb().formatRgb();
|
2201
|
+
}
|
2202
|
+
|
2188
2203
|
function color(format) {
|
2189
|
-
var m;
|
2204
|
+
var m, l;
|
2190
2205
|
format = (format + "").trim().toLowerCase();
|
2191
|
-
return (m =
|
2192
|
-
: (m
|
2206
|
+
return (m = reHex.exec(format)) ? (l = m[1].length, m = parseInt(m[1], 16), l === 6 ? rgbn(m) // #ff0000
|
2207
|
+
: l === 3 ? new Rgb((m >> 8 & 0xf) | (m >> 4 & 0xf0), (m >> 4 & 0xf) | (m & 0xf0), ((m & 0xf) << 4) | (m & 0xf), 1) // #f00
|
2208
|
+
: l === 8 ? rgba(m >> 24 & 0xff, m >> 16 & 0xff, m >> 8 & 0xff, (m & 0xff) / 0xff) // #ff000000
|
2209
|
+
: l === 4 ? rgba((m >> 12 & 0xf) | (m >> 8 & 0xf0), (m >> 8 & 0xf) | (m >> 4 & 0xf0), (m >> 4 & 0xf) | (m & 0xf0), (((m & 0xf) << 4) | (m & 0xf)) / 0xff) // #f000
|
2210
|
+
: null) // invalid hex
|
2193
2211
|
: (m = reRgbInteger.exec(format)) ? new Rgb(m[1], m[2], m[3], 1) // rgb(255, 0, 0)
|
2194
2212
|
: (m = reRgbPercent.exec(format)) ? new Rgb(m[1] * 255 / 100, m[2] * 255 / 100, m[3] * 255 / 100, 1) // rgb(100%, 0%, 0%)
|
2195
2213
|
: (m = reRgbaInteger.exec(format)) ? rgba(m[1], m[2], m[3], m[4]) // rgba(255, 0, 0, 1)
|
2196
2214
|
: (m = reRgbaPercent.exec(format)) ? rgba(m[1] * 255 / 100, m[2] * 255 / 100, m[3] * 255 / 100, m[4]) // rgb(100%, 0%, 0%, 1)
|
2197
2215
|
: (m = reHslPercent.exec(format)) ? hsla(m[1], m[2] / 100, m[3] / 100, 1) // hsl(120, 50%, 50%)
|
2198
2216
|
: (m = reHslaPercent.exec(format)) ? hsla(m[1], m[2] / 100, m[3] / 100, m[4]) // hsla(120, 50%, 50%, 1)
|
2199
|
-
: named.hasOwnProperty(format) ? rgbn(named[format])
|
2217
|
+
: named.hasOwnProperty(format) ? rgbn(named[format]) // eslint-disable-line no-prototype-builtins
|
2200
2218
|
: format === "transparent" ? new Rgb(NaN, NaN, NaN, 0)
|
2201
2219
|
: null;
|
2202
2220
|
}
|
@@ -2241,24 +2259,30 @@ define(Rgb, rgb, extend(Color, {
|
|
2241
2259
|
return this;
|
2242
2260
|
},
|
2243
2261
|
displayable: function() {
|
2244
|
-
return (0 <= this.r && this.r
|
2245
|
-
&& (0 <= this.g && this.g
|
2246
|
-
&& (0 <= this.b && this.b
|
2262
|
+
return (-0.5 <= this.r && this.r < 255.5)
|
2263
|
+
&& (-0.5 <= this.g && this.g < 255.5)
|
2264
|
+
&& (-0.5 <= this.b && this.b < 255.5)
|
2247
2265
|
&& (0 <= this.opacity && this.opacity <= 1);
|
2248
2266
|
},
|
2249
|
-
hex:
|
2250
|
-
|
2251
|
-
|
2252
|
-
toString:
|
2253
|
-
var a = this.opacity; a = isNaN(a) ? 1 : Math.max(0, Math.min(1, a));
|
2254
|
-
return (a === 1 ? "rgb(" : "rgba(")
|
2255
|
-
+ Math.max(0, Math.min(255, Math.round(this.r) || 0)) + ", "
|
2256
|
-
+ Math.max(0, Math.min(255, Math.round(this.g) || 0)) + ", "
|
2257
|
-
+ Math.max(0, Math.min(255, Math.round(this.b) || 0))
|
2258
|
-
+ (a === 1 ? ")" : ", " + a + ")");
|
2259
|
-
}
|
2267
|
+
hex: rgb_formatHex, // Deprecated! Use color.formatHex.
|
2268
|
+
formatHex: rgb_formatHex,
|
2269
|
+
formatRgb: rgb_formatRgb,
|
2270
|
+
toString: rgb_formatRgb
|
2260
2271
|
}));
|
2261
2272
|
|
2273
|
+
function rgb_formatHex() {
|
2274
|
+
return "#" + hex(this.r) + hex(this.g) + hex(this.b);
|
2275
|
+
}
|
2276
|
+
|
2277
|
+
function rgb_formatRgb() {
|
2278
|
+
var a = this.opacity; a = isNaN(a) ? 1 : Math.max(0, Math.min(1, a));
|
2279
|
+
return (a === 1 ? "rgb(" : "rgba(")
|
2280
|
+
+ Math.max(0, Math.min(255, Math.round(this.r) || 0)) + ", "
|
2281
|
+
+ Math.max(0, Math.min(255, Math.round(this.g) || 0)) + ", "
|
2282
|
+
+ Math.max(0, Math.min(255, Math.round(this.b) || 0))
|
2283
|
+
+ (a === 1 ? ")" : ", " + a + ")");
|
2284
|
+
}
|
2285
|
+
|
2262
2286
|
function hex(value) {
|
2263
2287
|
value = Math.max(0, Math.min(255, Math.round(value) || 0));
|
2264
2288
|
return (value < 16 ? "0" : "") + value.toString(16);
|
@@ -2334,6 +2358,14 @@ define(Hsl, hsl, extend(Color, {
|
|
2334
2358
|
return (0 <= this.s && this.s <= 1 || isNaN(this.s))
|
2335
2359
|
&& (0 <= this.l && this.l <= 1)
|
2336
2360
|
&& (0 <= this.opacity && this.opacity <= 1);
|
2361
|
+
},
|
2362
|
+
formatHsl: function() {
|
2363
|
+
var a = this.opacity; a = isNaN(a) ? 1 : Math.max(0, Math.min(1, a));
|
2364
|
+
return (a === 1 ? "hsl(" : "hsla(")
|
2365
|
+
+ (this.h || 0) + ", "
|
2366
|
+
+ (this.s || 0) * 100 + "%, "
|
2367
|
+
+ (this.l || 0) * 100 + "%"
|
2368
|
+
+ (a === 1 ? ")" : ", " + a + ")");
|
2337
2369
|
}
|
2338
2370
|
}));
|
2339
2371
|
|
@@ -2348,7 +2380,7 @@ function hsl2rgb(h, m1, m2) {
|
|
2348
2380
|
var deg2rad = Math.PI / 180;
|
2349
2381
|
var rad2deg = 180 / Math.PI;
|
2350
2382
|
|
2351
|
-
// https://
|
2383
|
+
// https://observablehq.com/@mbostock/lab-and-rgb
|
2352
2384
|
var K = 18,
|
2353
2385
|
Xn = 0.96422,
|
2354
2386
|
Yn = 1,
|
@@ -2360,11 +2392,7 @@ var K = 18,
|
|
2360
2392
|
|
2361
2393
|
function labConvert(o) {
|
2362
2394
|
if (o instanceof Lab) return new Lab(o.l, o.a, o.b, o.opacity);
|
2363
|
-
if (o instanceof Hcl)
|
2364
|
-
if (isNaN(o.h)) return new Lab(o.l, 0, 0, o.opacity);
|
2365
|
-
var h = o.h * deg2rad;
|
2366
|
-
return new Lab(o.l, Math.cos(h) * o.c, Math.sin(h) * o.c, o.opacity);
|
2367
|
-
}
|
2395
|
+
if (o instanceof Hcl) return hcl2lab(o);
|
2368
2396
|
if (!(o instanceof Rgb)) o = rgbConvert(o);
|
2369
2397
|
var r = rgb2lrgb(o.r),
|
2370
2398
|
g = rgb2lrgb(o.g),
|
@@ -2434,7 +2462,7 @@ function rgb2lrgb(x) {
|
|
2434
2462
|
function hclConvert(o) {
|
2435
2463
|
if (o instanceof Hcl) return new Hcl(o.h, o.c, o.l, o.opacity);
|
2436
2464
|
if (!(o instanceof Lab)) o = labConvert(o);
|
2437
|
-
if (o.a === 0 && o.b === 0) return new Hcl(NaN, 0, o.l, o.opacity);
|
2465
|
+
if (o.a === 0 && o.b === 0) return new Hcl(NaN, 0 < o.l && o.l < 100 ? 0 : NaN, o.l, o.opacity);
|
2438
2466
|
var h = Math.atan2(o.b, o.a) * rad2deg;
|
2439
2467
|
return new Hcl(h < 0 ? h + 360 : h, Math.sqrt(o.a * o.a + o.b * o.b), o.l, o.opacity);
|
2440
2468
|
}
|
@@ -2454,6 +2482,12 @@ function Hcl(h, c, l, opacity) {
|
|
2454
2482
|
this.opacity = +opacity;
|
2455
2483
|
}
|
2456
2484
|
|
2485
|
+
function hcl2lab(o) {
|
2486
|
+
if (isNaN(o.h)) return new Lab(o.l, 0, 0, o.opacity);
|
2487
|
+
var h = o.h * deg2rad;
|
2488
|
+
return new Lab(o.l, Math.cos(h) * o.c, Math.sin(h) * o.c, o.opacity);
|
2489
|
+
}
|
2490
|
+
|
2457
2491
|
define(Hcl, hcl, extend(Color, {
|
2458
2492
|
brighter: function(k) {
|
2459
2493
|
return new Hcl(this.h, this.c, this.l + K * (k == null ? 1 : k), this.opacity);
|
@@ -2462,7 +2496,7 @@ define(Hcl, hcl, extend(Color, {
|
|
2462
2496
|
return new Hcl(this.h, this.c, this.l - K * (k == null ? 1 : k), this.opacity);
|
2463
2497
|
},
|
2464
2498
|
rgb: function() {
|
2465
|
-
return
|
2499
|
+
return hcl2lab(this).rgb();
|
2466
2500
|
}
|
2467
2501
|
}));
|
2468
2502
|
|
@@ -2591,12 +2625,12 @@ function nogamma(a, b) {
|
|
2591
2625
|
}
|
2592
2626
|
|
2593
2627
|
var interpolateRgb = (function rgbGamma(y) {
|
2594
|
-
var color
|
2628
|
+
var color = gamma(y);
|
2595
2629
|
|
2596
|
-
function rgb
|
2597
|
-
var r = color
|
2598
|
-
g = color
|
2599
|
-
b = color
|
2630
|
+
function rgb$1(start, end) {
|
2631
|
+
var r = color((start = rgb(start)).r, (end = rgb(end)).r),
|
2632
|
+
g = color(start.g, end.g),
|
2633
|
+
b = color(start.b, end.b),
|
2600
2634
|
opacity = nogamma(start.opacity, end.opacity);
|
2601
2635
|
return function(t) {
|
2602
2636
|
start.r = r(t);
|
@@ -2607,9 +2641,9 @@ var interpolateRgb = (function rgbGamma(y) {
|
|
2607
2641
|
};
|
2608
2642
|
}
|
2609
2643
|
|
2610
|
-
rgb
|
2644
|
+
rgb$1.gamma = rgbGamma;
|
2611
2645
|
|
2612
|
-
return rgb
|
2646
|
+
return rgb$1;
|
2613
2647
|
})(1);
|
2614
2648
|
|
2615
2649
|
function rgbSpline(spline) {
|
@@ -2618,22 +2652,22 @@ function rgbSpline(spline) {
|
|
2618
2652
|
r = new Array(n),
|
2619
2653
|
g = new Array(n),
|
2620
2654
|
b = new Array(n),
|
2621
|
-
i, color
|
2655
|
+
i, color;
|
2622
2656
|
for (i = 0; i < n; ++i) {
|
2623
|
-
color
|
2624
|
-
r[i] = color
|
2625
|
-
g[i] = color
|
2626
|
-
b[i] = color
|
2657
|
+
color = rgb(colors[i]);
|
2658
|
+
r[i] = color.r || 0;
|
2659
|
+
g[i] = color.g || 0;
|
2660
|
+
b[i] = color.b || 0;
|
2627
2661
|
}
|
2628
2662
|
r = spline(r);
|
2629
2663
|
g = spline(g);
|
2630
2664
|
b = spline(b);
|
2631
|
-
color
|
2665
|
+
color.opacity = 1;
|
2632
2666
|
return function(t) {
|
2633
|
-
color
|
2634
|
-
color
|
2635
|
-
color
|
2636
|
-
return color
|
2667
|
+
color.r = r(t);
|
2668
|
+
color.g = g(t);
|
2669
|
+
color.b = b(t);
|
2670
|
+
return color + "";
|
2637
2671
|
};
|
2638
2672
|
};
|
2639
2673
|
}
|
@@ -2641,7 +2675,26 @@ function rgbSpline(spline) {
|
|
2641
2675
|
var rgbBasis = rgbSpline(basis$1);
|
2642
2676
|
var rgbBasisClosed = rgbSpline(basisClosed);
|
2643
2677
|
|
2678
|
+
function numberArray(a, b) {
|
2679
|
+
if (!b) b = [];
|
2680
|
+
var n = a ? Math.min(b.length, a.length) : 0,
|
2681
|
+
c = b.slice(),
|
2682
|
+
i;
|
2683
|
+
return function(t) {
|
2684
|
+
for (i = 0; i < n; ++i) c[i] = a[i] * (1 - t) + b[i] * t;
|
2685
|
+
return c;
|
2686
|
+
};
|
2687
|
+
}
|
2688
|
+
|
2689
|
+
function isNumberArray(x) {
|
2690
|
+
return ArrayBuffer.isView(x) && !(x instanceof DataView);
|
2691
|
+
}
|
2692
|
+
|
2644
2693
|
function array$1(a, b) {
|
2694
|
+
return (isNumberArray(b) ? numberArray : genericArray)(a, b);
|
2695
|
+
}
|
2696
|
+
|
2697
|
+
function genericArray(a, b) {
|
2645
2698
|
var nb = b ? b.length : 0,
|
2646
2699
|
na = a ? Math.min(nb, a.length) : 0,
|
2647
2700
|
x = new Array(na),
|
@@ -2659,14 +2712,14 @@ function array$1(a, b) {
|
|
2659
2712
|
|
2660
2713
|
function date(a, b) {
|
2661
2714
|
var d = new Date;
|
2662
|
-
return a = +a, b
|
2663
|
-
return d.setTime(a + b * t), d;
|
2715
|
+
return a = +a, b = +b, function(t) {
|
2716
|
+
return d.setTime(a * (1 - t) + b * t), d;
|
2664
2717
|
};
|
2665
2718
|
}
|
2666
2719
|
|
2667
2720
|
function interpolateNumber(a, b) {
|
2668
|
-
return a = +a, b
|
2669
|
-
return a + b * t;
|
2721
|
+
return a = +a, b = +b, function(t) {
|
2722
|
+
return a * (1 - t) + b * t;
|
2670
2723
|
};
|
2671
2724
|
}
|
2672
2725
|
|
@@ -2762,7 +2815,8 @@ function interpolateValue(a, b) {
|
|
2762
2815
|
: t === "string" ? ((c = color(b)) ? (b = c, interpolateRgb) : interpolateString)
|
2763
2816
|
: b instanceof color ? interpolateRgb
|
2764
2817
|
: b instanceof Date ? date
|
2765
|
-
:
|
2818
|
+
: isNumberArray(b) ? numberArray
|
2819
|
+
: Array.isArray(b) ? genericArray
|
2766
2820
|
: typeof b.valueOf !== "function" && typeof b.toString !== "function" || isNaN(b) ? object
|
2767
2821
|
: interpolateNumber)(a, b);
|
2768
2822
|
}
|
@@ -2783,8 +2837,8 @@ function hue$1(a, b) {
|
|
2783
2837
|
}
|
2784
2838
|
|
2785
2839
|
function interpolateRound(a, b) {
|
2786
|
-
return a = +a, b
|
2787
|
-
return Math.round(a + b * t);
|
2840
|
+
return a = +a, b = +b, function(t) {
|
2841
|
+
return Math.round(a * (1 - t) + b * t);
|
2788
2842
|
};
|
2789
2843
|
}
|
2790
2844
|
|
@@ -2965,9 +3019,9 @@ function interpolateZoom(p0, p1) {
|
|
2965
3019
|
return i;
|
2966
3020
|
}
|
2967
3021
|
|
2968
|
-
function hsl$1(hue
|
3022
|
+
function hsl$1(hue) {
|
2969
3023
|
return function(start, end) {
|
2970
|
-
var h = hue
|
3024
|
+
var h = hue((start = hsl(start)).h, (end = hsl(end)).h),
|
2971
3025
|
s = nogamma(start.s, end.s),
|
2972
3026
|
l = nogamma(start.l, end.l),
|
2973
3027
|
opacity = nogamma(start.opacity, end.opacity);
|
@@ -2998,9 +3052,9 @@ function lab$1(start, end) {
|
|
2998
3052
|
};
|
2999
3053
|
}
|
3000
3054
|
|
3001
|
-
function hcl$1(hue
|
3055
|
+
function hcl$1(hue) {
|
3002
3056
|
return function(start, end) {
|
3003
|
-
var h = hue
|
3057
|
+
var h = hue((start = hcl(start)).h, (end = hcl(end)).h),
|
3004
3058
|
c = nogamma(start.c, end.c),
|
3005
3059
|
l = nogamma(start.l, end.l),
|
3006
3060
|
opacity = nogamma(start.opacity, end.opacity);
|
@@ -3017,12 +3071,12 @@ function hcl$1(hue$$1) {
|
|
3017
3071
|
var hcl$2 = hcl$1(hue);
|
3018
3072
|
var hclLong = hcl$1(nogamma);
|
3019
3073
|
|
3020
|
-
function cubehelix$1(hue
|
3074
|
+
function cubehelix$1(hue) {
|
3021
3075
|
return (function cubehelixGamma(y) {
|
3022
3076
|
y = +y;
|
3023
3077
|
|
3024
|
-
function cubehelix
|
3025
|
-
var h = hue
|
3078
|
+
function cubehelix$1(start, end) {
|
3079
|
+
var h = hue((start = cubehelix(start)).h, (end = cubehelix(end)).h),
|
3026
3080
|
s = nogamma(start.s, end.s),
|
3027
3081
|
l = nogamma(start.l, end.l),
|
3028
3082
|
opacity = nogamma(start.opacity, end.opacity);
|
@@ -3035,9 +3089,9 @@ function cubehelix$1(hue$$1) {
|
|
3035
3089
|
};
|
3036
3090
|
}
|
3037
3091
|
|
3038
|
-
cubehelix
|
3092
|
+
cubehelix$1.gamma = cubehelixGamma;
|
3039
3093
|
|
3040
|
-
return cubehelix
|
3094
|
+
return cubehelix$1;
|
3041
3095
|
})(1);
|
3042
3096
|
}
|
3043
3097
|
|
@@ -3345,7 +3399,7 @@ function create$1(node, id, self) {
|
|
3345
3399
|
|
3346
3400
|
function interrupt(node, name) {
|
3347
3401
|
var schedules = node.__transition,
|
3348
|
-
schedule
|
3402
|
+
schedule,
|
3349
3403
|
active,
|
3350
3404
|
empty = true,
|
3351
3405
|
i;
|
@@ -3355,11 +3409,11 @@ function interrupt(node, name) {
|
|
3355
3409
|
name = name == null ? null : name + "";
|
3356
3410
|
|
3357
3411
|
for (i in schedules) {
|
3358
|
-
if ((schedule
|
3359
|
-
active = schedule
|
3360
|
-
schedule
|
3361
|
-
schedule
|
3362
|
-
schedule
|
3412
|
+
if ((schedule = schedules[i]).name !== name) { empty = false; continue; }
|
3413
|
+
active = schedule.state > STARTING && schedule.state < ENDING;
|
3414
|
+
schedule.state = ENDED;
|
3415
|
+
schedule.timer.stop();
|
3416
|
+
schedule.on.call(active ? "interrupt" : "cancel", node, node.__data__, schedule.index, schedule.group);
|
3363
3417
|
delete schedules[i];
|
3364
3418
|
}
|
3365
3419
|
|
@@ -3375,8 +3429,8 @@ function selection_interrupt(name) {
|
|
3375
3429
|
function tweenRemove(id, name) {
|
3376
3430
|
var tween0, tween1;
|
3377
3431
|
return function() {
|
3378
|
-
var schedule
|
3379
|
-
tween = schedule
|
3432
|
+
var schedule = set$1(this, id),
|
3433
|
+
tween = schedule.tween;
|
3380
3434
|
|
3381
3435
|
// If this node shared tween with the previous node,
|
3382
3436
|
// just assign the updated shared tween and we’re done!
|
@@ -3392,7 +3446,7 @@ function tweenRemove(id, name) {
|
|
3392
3446
|
}
|
3393
3447
|
}
|
3394
3448
|
|
3395
|
-
schedule
|
3449
|
+
schedule.tween = tween1;
|
3396
3450
|
};
|
3397
3451
|
}
|
3398
3452
|
|
@@ -3400,8 +3454,8 @@ function tweenFunction(id, name, value) {
|
|
3400
3454
|
var tween0, tween1;
|
3401
3455
|
if (typeof value !== "function") throw new Error;
|
3402
3456
|
return function() {
|
3403
|
-
var schedule
|
3404
|
-
tween = schedule
|
3457
|
+
var schedule = set$1(this, id),
|
3458
|
+
tween = schedule.tween;
|
3405
3459
|
|
3406
3460
|
// If this node shared tween with the previous node,
|
3407
3461
|
// just assign the updated shared tween and we’re done!
|
@@ -3417,7 +3471,7 @@ function tweenFunction(id, name, value) {
|
|
3417
3471
|
if (i === n) tween1.push(t);
|
3418
3472
|
}
|
3419
3473
|
|
3420
|
-
schedule
|
3474
|
+
schedule.tween = tween1;
|
3421
3475
|
};
|
3422
3476
|
}
|
3423
3477
|
|
@@ -3443,8 +3497,8 @@ function tweenValue(transition, name, value) {
|
|
3443
3497
|
var id = transition._id;
|
3444
3498
|
|
3445
3499
|
transition.each(function() {
|
3446
|
-
var schedule
|
3447
|
-
(schedule
|
3500
|
+
var schedule = set$1(this, id);
|
3501
|
+
(schedule.value || (schedule.value = {}))[name] = value.apply(this, arguments);
|
3448
3502
|
});
|
3449
3503
|
|
3450
3504
|
return function(node) {
|
@@ -3472,7 +3526,7 @@ function attrRemoveNS$1(fullname) {
|
|
3472
3526
|
};
|
3473
3527
|
}
|
3474
3528
|
|
3475
|
-
function attrConstant$1(name, interpolate
|
3529
|
+
function attrConstant$1(name, interpolate, value1) {
|
3476
3530
|
var string00,
|
3477
3531
|
string1 = value1 + "",
|
3478
3532
|
interpolate0;
|
@@ -3480,11 +3534,11 @@ function attrConstant$1(name, interpolate$$1, value1) {
|
|
3480
3534
|
var string0 = this.getAttribute(name);
|
3481
3535
|
return string0 === string1 ? null
|
3482
3536
|
: string0 === string00 ? interpolate0
|
3483
|
-
: interpolate0 = interpolate
|
3537
|
+
: interpolate0 = interpolate(string00 = string0, value1);
|
3484
3538
|
};
|
3485
3539
|
}
|
3486
3540
|
|
3487
|
-
function attrConstantNS$1(fullname, interpolate
|
3541
|
+
function attrConstantNS$1(fullname, interpolate, value1) {
|
3488
3542
|
var string00,
|
3489
3543
|
string1 = value1 + "",
|
3490
3544
|
interpolate0;
|
@@ -3492,11 +3546,11 @@ function attrConstantNS$1(fullname, interpolate$$1, value1) {
|
|
3492
3546
|
var string0 = this.getAttributeNS(fullname.space, fullname.local);
|
3493
3547
|
return string0 === string1 ? null
|
3494
3548
|
: string0 === string00 ? interpolate0
|
3495
|
-
: interpolate0 = interpolate
|
3549
|
+
: interpolate0 = interpolate(string00 = string0, value1);
|
3496
3550
|
};
|
3497
3551
|
}
|
3498
3552
|
|
3499
|
-
function attrFunction$1(name, interpolate
|
3553
|
+
function attrFunction$1(name, interpolate, value) {
|
3500
3554
|
var string00,
|
3501
3555
|
string10,
|
3502
3556
|
interpolate0;
|
@@ -3507,11 +3561,11 @@ function attrFunction$1(name, interpolate$$1, value) {
|
|
3507
3561
|
string1 = value1 + "";
|
3508
3562
|
return string0 === string1 ? null
|
3509
3563
|
: string0 === string00 && string1 === string10 ? interpolate0
|
3510
|
-
: (string10 = string1, interpolate0 = interpolate
|
3564
|
+
: (string10 = string1, interpolate0 = interpolate(string00 = string0, value1));
|
3511
3565
|
};
|
3512
3566
|
}
|
3513
3567
|
|
3514
|
-
function attrFunctionNS$1(fullname, interpolate
|
3568
|
+
function attrFunctionNS$1(fullname, interpolate, value) {
|
3515
3569
|
var string00,
|
3516
3570
|
string10,
|
3517
3571
|
interpolate0;
|
@@ -3522,7 +3576,7 @@ function attrFunctionNS$1(fullname, interpolate$$1, value) {
|
|
3522
3576
|
string1 = value1 + "";
|
3523
3577
|
return string0 === string1 ? null
|
3524
3578
|
: string0 === string00 && string1 === string10 ? interpolate0
|
3525
|
-
: (string10 = string1, interpolate0 = interpolate
|
3579
|
+
: (string10 = string1, interpolate0 = interpolate(string00 = string0, value1));
|
3526
3580
|
};
|
3527
3581
|
}
|
3528
3582
|
|
@@ -3536,13 +3590,13 @@ function transition_attr(name, value) {
|
|
3536
3590
|
|
3537
3591
|
function attrInterpolate(name, i) {
|
3538
3592
|
return function(t) {
|
3539
|
-
this.setAttribute(name, i(t));
|
3593
|
+
this.setAttribute(name, i.call(this, t));
|
3540
3594
|
};
|
3541
3595
|
}
|
3542
3596
|
|
3543
3597
|
function attrInterpolateNS(fullname, i) {
|
3544
3598
|
return function(t) {
|
3545
|
-
this.setAttributeNS(fullname.space, fullname.local, i(t));
|
3599
|
+
this.setAttributeNS(fullname.space, fullname.local, i.call(this, t));
|
3546
3600
|
};
|
3547
3601
|
}
|
3548
3602
|
|
@@ -3650,10 +3704,10 @@ function transition_filter(match) {
|
|
3650
3704
|
return new Transition(subgroups, this._parents, this._name, this._id);
|
3651
3705
|
}
|
3652
3706
|
|
3653
|
-
function transition_merge(transition
|
3654
|
-
if (transition
|
3707
|
+
function transition_merge(transition) {
|
3708
|
+
if (transition._id !== this._id) throw new Error;
|
3655
3709
|
|
3656
|
-
for (var groups0 = this._groups, groups1 = transition
|
3710
|
+
for (var groups0 = this._groups, groups1 = transition._groups, m0 = groups0.length, m1 = groups1.length, m = Math.min(m0, m1), merges = new Array(m0), j = 0; j < m; ++j) {
|
3657
3711
|
for (var group0 = groups0[j], group1 = groups1[j], n = group0.length, merge = merges[j] = new Array(n), node, i = 0; i < n; ++i) {
|
3658
3712
|
if (node = group0[i] || group1[i]) {
|
3659
3713
|
merge[i] = node;
|
@@ -3679,15 +3733,15 @@ function start(name) {
|
|
3679
3733
|
function onFunction(id, name, listener) {
|
3680
3734
|
var on0, on1, sit = start(name) ? init : set$1;
|
3681
3735
|
return function() {
|
3682
|
-
var schedule
|
3683
|
-
on = schedule
|
3736
|
+
var schedule = sit(this, id),
|
3737
|
+
on = schedule.on;
|
3684
3738
|
|
3685
3739
|
// If this node shared a dispatch with the previous node,
|
3686
3740
|
// just assign the updated shared dispatch and we’re done!
|
3687
3741
|
// Otherwise, copy-on-write.
|
3688
3742
|
if (on !== on0) (on1 = (on0 = on).copy()).on(name, listener);
|
3689
3743
|
|
3690
|
-
schedule
|
3744
|
+
schedule.on = on1;
|
3691
3745
|
};
|
3692
3746
|
}
|
3693
3747
|
|
@@ -3711,15 +3765,15 @@ function transition_remove() {
|
|
3711
3765
|
return this.on("end.remove", removeFunction(this._id));
|
3712
3766
|
}
|
3713
3767
|
|
3714
|
-
function transition_select(select
|
3768
|
+
function transition_select(select) {
|
3715
3769
|
var name = this._name,
|
3716
3770
|
id = this._id;
|
3717
3771
|
|
3718
|
-
if (typeof select
|
3772
|
+
if (typeof select !== "function") select = selector(select);
|
3719
3773
|
|
3720
3774
|
for (var groups = this._groups, m = groups.length, subgroups = new Array(m), j = 0; j < m; ++j) {
|
3721
3775
|
for (var group = groups[j], n = group.length, subgroup = subgroups[j] = new Array(n), node, subnode, i = 0; i < n; ++i) {
|
3722
|
-
if ((node = group[i]) && (subnode = select
|
3776
|
+
if ((node = group[i]) && (subnode = select.call(node, node.__data__, i, group))) {
|
3723
3777
|
if ("__data__" in node) subnode.__data__ = node.__data__;
|
3724
3778
|
subgroup[i] = subnode;
|
3725
3779
|
schedule(subgroup[i], name, id, i, subgroup, get$1(node, id));
|
@@ -3730,16 +3784,16 @@ function transition_select(select$$1) {
|
|
3730
3784
|
return new Transition(subgroups, this._parents, name, id);
|
3731
3785
|
}
|
3732
3786
|
|
3733
|
-
function transition_selectAll(select
|
3787
|
+
function transition_selectAll(select) {
|
3734
3788
|
var name = this._name,
|
3735
3789
|
id = this._id;
|
3736
3790
|
|
3737
|
-
if (typeof select
|
3791
|
+
if (typeof select !== "function") select = selectorAll(select);
|
3738
3792
|
|
3739
3793
|
for (var groups = this._groups, m = groups.length, subgroups = [], parents = [], j = 0; j < m; ++j) {
|
3740
3794
|
for (var group = groups[j], n = group.length, node, i = 0; i < n; ++i) {
|
3741
3795
|
if (node = group[i]) {
|
3742
|
-
for (var children = select
|
3796
|
+
for (var children = select.call(node, node.__data__, i, group), child, inherit = get$1(node, id), k = 0, l = children.length; k < l; ++k) {
|
3743
3797
|
if (child = children[k]) {
|
3744
3798
|
schedule(child, name, id, k, children, inherit);
|
3745
3799
|
}
|
@@ -3759,7 +3813,7 @@ function transition_selection() {
|
|
3759
3813
|
return new Selection$1(this._groups, this._parents);
|
3760
3814
|
}
|
3761
3815
|
|
3762
|
-
function styleNull(name, interpolate
|
3816
|
+
function styleNull(name, interpolate) {
|
3763
3817
|
var string00,
|
3764
3818
|
string10,
|
3765
3819
|
interpolate0;
|
@@ -3768,7 +3822,7 @@ function styleNull(name, interpolate$$1) {
|
|
3768
3822
|
string1 = (this.style.removeProperty(name), styleValue(this, name));
|
3769
3823
|
return string0 === string1 ? null
|
3770
3824
|
: string0 === string00 && string1 === string10 ? interpolate0
|
3771
|
-
: interpolate0 = interpolate
|
3825
|
+
: interpolate0 = interpolate(string00 = string0, string10 = string1);
|
3772
3826
|
};
|
3773
3827
|
}
|
3774
3828
|
|
@@ -3778,7 +3832,7 @@ function styleRemove$1(name) {
|
|
3778
3832
|
};
|
3779
3833
|
}
|
3780
3834
|
|
3781
|
-
function styleConstant$1(name, interpolate
|
3835
|
+
function styleConstant$1(name, interpolate, value1) {
|
3782
3836
|
var string00,
|
3783
3837
|
string1 = value1 + "",
|
3784
3838
|
interpolate0;
|
@@ -3786,11 +3840,11 @@ function styleConstant$1(name, interpolate$$1, value1) {
|
|
3786
3840
|
var string0 = styleValue(this, name);
|
3787
3841
|
return string0 === string1 ? null
|
3788
3842
|
: string0 === string00 ? interpolate0
|
3789
|
-
: interpolate0 = interpolate
|
3843
|
+
: interpolate0 = interpolate(string00 = string0, value1);
|
3790
3844
|
};
|
3791
3845
|
}
|
3792
3846
|
|
3793
|
-
function styleFunction$1(name, interpolate
|
3847
|
+
function styleFunction$1(name, interpolate, value) {
|
3794
3848
|
var string00,
|
3795
3849
|
string10,
|
3796
3850
|
interpolate0;
|
@@ -3801,23 +3855,23 @@ function styleFunction$1(name, interpolate$$1, value) {
|
|
3801
3855
|
if (value1 == null) string1 = value1 = (this.style.removeProperty(name), styleValue(this, name));
|
3802
3856
|
return string0 === string1 ? null
|
3803
3857
|
: string0 === string00 && string1 === string10 ? interpolate0
|
3804
|
-
: (string10 = string1, interpolate0 = interpolate
|
3858
|
+
: (string10 = string1, interpolate0 = interpolate(string00 = string0, value1));
|
3805
3859
|
};
|
3806
3860
|
}
|
3807
3861
|
|
3808
3862
|
function styleMaybeRemove(id, name) {
|
3809
3863
|
var on0, on1, listener0, key = "style." + name, event = "end." + key, remove;
|
3810
3864
|
return function() {
|
3811
|
-
var schedule
|
3812
|
-
on = schedule
|
3813
|
-
listener = schedule
|
3865
|
+
var schedule = set$1(this, id),
|
3866
|
+
on = schedule.on,
|
3867
|
+
listener = schedule.value[key] == null ? remove || (remove = styleRemove$1(name)) : undefined;
|
3814
3868
|
|
3815
3869
|
// If this node shared a dispatch with the previous node,
|
3816
3870
|
// just assign the updated shared dispatch and we’re done!
|
3817
3871
|
// Otherwise, copy-on-write.
|
3818
3872
|
if (on !== on0 || listener0 !== listener) (on1 = (on0 = on).copy()).on(event, listener0 = listener);
|
3819
3873
|
|
3820
|
-
schedule
|
3874
|
+
schedule.on = on1;
|
3821
3875
|
};
|
3822
3876
|
}
|
3823
3877
|
|
@@ -3836,7 +3890,7 @@ function transition_style(name, value, priority) {
|
|
3836
3890
|
|
3837
3891
|
function styleInterpolate(name, i, priority) {
|
3838
3892
|
return function(t) {
|
3839
|
-
this.style.setProperty(name, i(t), priority);
|
3893
|
+
this.style.setProperty(name, i.call(this, t), priority);
|
3840
3894
|
};
|
3841
3895
|
}
|
3842
3896
|
|
@@ -3878,6 +3932,31 @@ function transition_text(value) {
|
|
3878
3932
|
: textConstant$1(value == null ? "" : value + ""));
|
3879
3933
|
}
|
3880
3934
|
|
3935
|
+
function textInterpolate(i) {
|
3936
|
+
return function(t) {
|
3937
|
+
this.textContent = i.call(this, t);
|
3938
|
+
};
|
3939
|
+
}
|
3940
|
+
|
3941
|
+
function textTween(value) {
|
3942
|
+
var t0, i0;
|
3943
|
+
function tween() {
|
3944
|
+
var i = value.apply(this, arguments);
|
3945
|
+
if (i !== i0) t0 = (i0 = i) && textInterpolate(i);
|
3946
|
+
return t0;
|
3947
|
+
}
|
3948
|
+
tween._value = value;
|
3949
|
+
return tween;
|
3950
|
+
}
|
3951
|
+
|
3952
|
+
function transition_textTween(value) {
|
3953
|
+
var key = "text";
|
3954
|
+
if (arguments.length < 1) return (key = this.tween(key)) && key._value;
|
3955
|
+
if (value == null) return this.tween(key, null);
|
3956
|
+
if (typeof value !== "function") throw new Error;
|
3957
|
+
return this.tween(key, textTween(value));
|
3958
|
+
}
|
3959
|
+
|
3881
3960
|
function transition_transition() {
|
3882
3961
|
var name = this._name,
|
3883
3962
|
id0 = this._id,
|
@@ -3907,8 +3986,8 @@ function transition_end() {
|
|
3907
3986
|
end = {value: function() { if (--size === 0) resolve(); }};
|
3908
3987
|
|
3909
3988
|
that.each(function() {
|
3910
|
-
var schedule
|
3911
|
-
on = schedule
|
3989
|
+
var schedule = set$1(this, id),
|
3990
|
+
on = schedule.on;
|
3912
3991
|
|
3913
3992
|
// If this node shared a dispatch with the previous node,
|
3914
3993
|
// just assign the updated shared dispatch and we’re done!
|
@@ -3920,7 +3999,7 @@ function transition_end() {
|
|
3920
3999
|
on1._.end.push(end);
|
3921
4000
|
}
|
3922
4001
|
|
3923
|
-
schedule
|
4002
|
+
schedule.on = on1;
|
3924
4003
|
});
|
3925
4004
|
});
|
3926
4005
|
}
|
@@ -3964,6 +4043,7 @@ Transition.prototype = transition.prototype = {
|
|
3964
4043
|
style: transition_style,
|
3965
4044
|
styleTween: transition_styleTween,
|
3966
4045
|
text: transition_text,
|
4046
|
+
textTween: transition_textTween,
|
3967
4047
|
remove: transition_remove,
|
3968
4048
|
tween: transition_tween,
|
3969
4049
|
delay: transition_delay,
|
@@ -4228,13 +4308,13 @@ var root$1 = [null];
|
|
4228
4308
|
|
4229
4309
|
function active(node, name) {
|
4230
4310
|
var schedules = node.__transition,
|
4231
|
-
schedule
|
4311
|
+
schedule,
|
4232
4312
|
i;
|
4233
4313
|
|
4234
4314
|
if (schedules) {
|
4235
4315
|
name = name == null ? null : name + "";
|
4236
4316
|
for (i in schedules) {
|
4237
|
-
if ((schedule
|
4317
|
+
if ((schedule = schedules[i]).state > SCHEDULED && schedule.name === name) {
|
4238
4318
|
return new Transition([[node]], root$1, name, +i);
|
4239
4319
|
}
|
4240
4320
|
}
|
@@ -4269,24 +4349,38 @@ var MODE_DRAG = {name: "drag"},
|
|
4269
4349
|
MODE_HANDLE = {name: "handle"},
|
4270
4350
|
MODE_CENTER = {name: "center"};
|
4271
4351
|
|
4352
|
+
function number1(e) {
|
4353
|
+
return [+e[0], +e[1]];
|
4354
|
+
}
|
4355
|
+
|
4356
|
+
function number2(e) {
|
4357
|
+
return [number1(e[0]), number1(e[1])];
|
4358
|
+
}
|
4359
|
+
|
4360
|
+
function toucher(identifier) {
|
4361
|
+
return function(target) {
|
4362
|
+
return touch(target, exports.event.touches, identifier);
|
4363
|
+
};
|
4364
|
+
}
|
4365
|
+
|
4272
4366
|
var X = {
|
4273
4367
|
name: "x",
|
4274
|
-
handles: ["
|
4275
|
-
input: function(x, e) { return x
|
4368
|
+
handles: ["w", "e"].map(type),
|
4369
|
+
input: function(x, e) { return x == null ? null : [[+x[0], e[0][1]], [+x[1], e[1][1]]]; },
|
4276
4370
|
output: function(xy) { return xy && [xy[0][0], xy[1][0]]; }
|
4277
4371
|
};
|
4278
4372
|
|
4279
4373
|
var Y = {
|
4280
4374
|
name: "y",
|
4281
4375
|
handles: ["n", "s"].map(type),
|
4282
|
-
input: function(y, e) { return y
|
4376
|
+
input: function(y, e) { return y == null ? null : [[e[0][0], +y[0]], [e[1][0], +y[1]]]; },
|
4283
4377
|
output: function(xy) { return xy && [xy[0][1], xy[1][1]]; }
|
4284
4378
|
};
|
4285
4379
|
|
4286
4380
|
var XY = {
|
4287
4381
|
name: "xy",
|
4288
|
-
handles: ["n", "
|
4289
|
-
input: function(xy) { return xy; },
|
4382
|
+
handles: ["n", "w", "e", "s", "nw", "ne", "sw", "se"].map(type),
|
4383
|
+
input: function(xy) { return xy == null ? null : number2(xy); },
|
4290
4384
|
output: function(xy) { return xy; }
|
4291
4385
|
};
|
4292
4386
|
|
@@ -4353,14 +4447,22 @@ function type(t) {
|
|
4353
4447
|
|
4354
4448
|
// Ignore right-click, since that should open the context menu.
|
4355
4449
|
function defaultFilter$1() {
|
4356
|
-
return !exports.event.button;
|
4450
|
+
return !exports.event.ctrlKey && !exports.event.button;
|
4357
4451
|
}
|
4358
4452
|
|
4359
4453
|
function defaultExtent() {
|
4360
4454
|
var svg = this.ownerSVGElement || this;
|
4455
|
+
if (svg.hasAttribute("viewBox")) {
|
4456
|
+
svg = svg.viewBox.baseVal;
|
4457
|
+
return [[svg.x, svg.y], [svg.x + svg.width, svg.y + svg.height]];
|
4458
|
+
}
|
4361
4459
|
return [[0, 0], [svg.width.baseVal.value, svg.height.baseVal.value]];
|
4362
4460
|
}
|
4363
4461
|
|
4462
|
+
function defaultTouchable$1() {
|
4463
|
+
return navigator.maxTouchPoints || ("ontouchstart" in this);
|
4464
|
+
}
|
4465
|
+
|
4364
4466
|
// Like d3.local, but with the name “__brush” rather than auto-generated.
|
4365
4467
|
function local$1(node) {
|
4366
4468
|
while (!node.__brush) if (!(node = node.parentNode)) return;
|
@@ -4392,7 +4494,9 @@ function brush() {
|
|
4392
4494
|
function brush$1(dim) {
|
4393
4495
|
var extent = defaultExtent,
|
4394
4496
|
filter = defaultFilter$1,
|
4395
|
-
|
4497
|
+
touchable = defaultTouchable$1,
|
4498
|
+
keys = true,
|
4499
|
+
listeners = dispatch("start", "brush", "end"),
|
4396
4500
|
handleSize = 6,
|
4397
4501
|
touchending;
|
4398
4502
|
|
@@ -4439,11 +4543,16 @@ function brush$1(dim) {
|
|
4439
4543
|
.each(redraw)
|
4440
4544
|
.attr("fill", "none")
|
4441
4545
|
.attr("pointer-events", "all")
|
4442
|
-
.
|
4443
|
-
|
4546
|
+
.on("mousedown.brush", started)
|
4547
|
+
.filter(touchable)
|
4548
|
+
.on("touchstart.brush", started)
|
4549
|
+
.on("touchmove.brush", touchmoved)
|
4550
|
+
.on("touchend.brush touchcancel.brush", touchended)
|
4551
|
+
.style("touch-action", "none")
|
4552
|
+
.style("-webkit-tap-highlight-color", "rgba(0,0,0,0)");
|
4444
4553
|
}
|
4445
4554
|
|
4446
|
-
brush.move = function(group, selection
|
4555
|
+
brush.move = function(group, selection) {
|
4447
4556
|
if (group.selection) {
|
4448
4557
|
group
|
4449
4558
|
.on("start.brush", function() { emitter(this, arguments).beforestart().start(); })
|
@@ -4453,16 +4562,16 @@ function brush$1(dim) {
|
|
4453
4562
|
state = that.__brush,
|
4454
4563
|
emit = emitter(that, arguments),
|
4455
4564
|
selection0 = state.selection,
|
4456
|
-
selection1 = dim.input(typeof selection
|
4565
|
+
selection1 = dim.input(typeof selection === "function" ? selection.apply(this, arguments) : selection, state.extent),
|
4457
4566
|
i = interpolateValue(selection0, selection1);
|
4458
4567
|
|
4459
4568
|
function tween(t) {
|
4460
|
-
state.selection = t === 1 &&
|
4569
|
+
state.selection = t === 1 && selection1 === null ? null : i(t);
|
4461
4570
|
redraw.call(that);
|
4462
4571
|
emit.brush();
|
4463
4572
|
}
|
4464
4573
|
|
4465
|
-
return selection0 && selection1 ? tween : tween(1);
|
4574
|
+
return selection0 !== null && selection1 !== null ? tween : tween(1);
|
4466
4575
|
});
|
4467
4576
|
} else {
|
4468
4577
|
group
|
@@ -4470,35 +4579,39 @@ function brush$1(dim) {
|
|
4470
4579
|
var that = this,
|
4471
4580
|
args = arguments,
|
4472
4581
|
state = that.__brush,
|
4473
|
-
selection1 = dim.input(typeof selection
|
4582
|
+
selection1 = dim.input(typeof selection === "function" ? selection.apply(that, args) : selection, state.extent),
|
4474
4583
|
emit = emitter(that, args).beforestart();
|
4475
4584
|
|
4476
4585
|
interrupt(that);
|
4477
|
-
state.selection = selection1
|
4586
|
+
state.selection = selection1 === null ? null : selection1;
|
4478
4587
|
redraw.call(that);
|
4479
4588
|
emit.start().brush().end();
|
4480
4589
|
});
|
4481
4590
|
}
|
4482
4591
|
};
|
4483
4592
|
|
4593
|
+
brush.clear = function(group) {
|
4594
|
+
brush.move(group, null);
|
4595
|
+
};
|
4596
|
+
|
4484
4597
|
function redraw() {
|
4485
4598
|
var group = select(this),
|
4486
|
-
selection
|
4599
|
+
selection = local$1(this).selection;
|
4487
4600
|
|
4488
|
-
if (selection
|
4601
|
+
if (selection) {
|
4489
4602
|
group.selectAll(".selection")
|
4490
4603
|
.style("display", null)
|
4491
|
-
.attr("x", selection
|
4492
|
-
.attr("y", selection
|
4493
|
-
.attr("width", selection
|
4494
|
-
.attr("height", selection
|
4604
|
+
.attr("x", selection[0][0])
|
4605
|
+
.attr("y", selection[0][1])
|
4606
|
+
.attr("width", selection[1][0] - selection[0][0])
|
4607
|
+
.attr("height", selection[1][1] - selection[0][1]);
|
4495
4608
|
|
4496
4609
|
group.selectAll(".handle")
|
4497
4610
|
.style("display", null)
|
4498
|
-
.attr("x", function(d) { return d.type[d.type.length - 1] === "e" ? selection
|
4499
|
-
.attr("y", function(d) { return d.type[0] === "s" ? selection
|
4500
|
-
.attr("width", function(d) { return d.type === "n" || d.type === "s" ? selection
|
4501
|
-
.attr("height", function(d) { return d.type === "e" || d.type === "w" ? selection
|
4611
|
+
.attr("x", function(d) { return d.type[d.type.length - 1] === "e" ? selection[1][0] - handleSize / 2 : selection[0][0] - handleSize / 2; })
|
4612
|
+
.attr("y", function(d) { return d.type[0] === "s" ? selection[1][1] - handleSize / 2 : selection[0][1] - handleSize / 2; })
|
4613
|
+
.attr("width", function(d) { return d.type === "n" || d.type === "s" ? selection[1][0] - selection[0][0] + handleSize : handleSize; })
|
4614
|
+
.attr("height", function(d) { return d.type === "e" || d.type === "w" ? selection[1][1] - selection[0][1] + handleSize : handleSize; });
|
4502
4615
|
}
|
4503
4616
|
|
4504
4617
|
else {
|
@@ -4511,8 +4624,8 @@ function brush$1(dim) {
|
|
4511
4624
|
}
|
4512
4625
|
}
|
4513
4626
|
|
4514
|
-
function emitter(that, args) {
|
4515
|
-
return that.__brush.emitter || new Emitter(that, args);
|
4627
|
+
function emitter(that, args, clean) {
|
4628
|
+
return (!clean && that.__brush.emitter) || new Emitter(that, args);
|
4516
4629
|
}
|
4517
4630
|
|
4518
4631
|
function Emitter(that, args) {
|
@@ -4529,6 +4642,7 @@ function brush$1(dim) {
|
|
4529
4642
|
},
|
4530
4643
|
start: function() {
|
4531
4644
|
if (this.starting) this.starting = false, this.emit("start");
|
4645
|
+
else this.emit("brush");
|
4532
4646
|
return this;
|
4533
4647
|
},
|
4534
4648
|
brush: function() {
|
@@ -4545,42 +4659,43 @@ function brush$1(dim) {
|
|
4545
4659
|
};
|
4546
4660
|
|
4547
4661
|
function started() {
|
4548
|
-
if (
|
4549
|
-
else if (touchending) return;
|
4662
|
+
if (touchending && !exports.event.touches) return;
|
4550
4663
|
if (!filter.apply(this, arguments)) return;
|
4551
4664
|
|
4552
4665
|
var that = this,
|
4553
4666
|
type = exports.event.target.__data__.type,
|
4554
|
-
mode = (exports.event.metaKey ? type = "overlay" : type) === "selection" ? MODE_DRAG : (exports.event.altKey ? MODE_CENTER : MODE_HANDLE),
|
4667
|
+
mode = (keys && exports.event.metaKey ? type = "overlay" : type) === "selection" ? MODE_DRAG : (keys && exports.event.altKey ? MODE_CENTER : MODE_HANDLE),
|
4555
4668
|
signX = dim === Y ? null : signsX[type],
|
4556
4669
|
signY = dim === X ? null : signsY[type],
|
4557
4670
|
state = local$1(that),
|
4558
4671
|
extent = state.extent,
|
4559
|
-
selection
|
4672
|
+
selection = state.selection,
|
4560
4673
|
W = extent[0][0], w0, w1,
|
4561
4674
|
N = extent[0][1], n0, n1,
|
4562
4675
|
E = extent[1][0], e0, e1,
|
4563
4676
|
S = extent[1][1], s0, s1,
|
4564
|
-
dx,
|
4565
|
-
dy,
|
4677
|
+
dx = 0,
|
4678
|
+
dy = 0,
|
4566
4679
|
moving,
|
4567
|
-
shifting = signX && signY && exports.event.shiftKey,
|
4680
|
+
shifting = signX && signY && keys && exports.event.shiftKey,
|
4568
4681
|
lockX,
|
4569
4682
|
lockY,
|
4570
|
-
|
4571
|
-
|
4572
|
-
|
4683
|
+
pointer = exports.event.touches ? toucher(exports.event.changedTouches[0].identifier) : mouse,
|
4684
|
+
point0 = pointer(that),
|
4685
|
+
point = point0,
|
4686
|
+
emit = emitter(that, arguments, true).beforestart();
|
4573
4687
|
|
4574
4688
|
if (type === "overlay") {
|
4575
|
-
|
4689
|
+
if (selection) moving = true;
|
4690
|
+
state.selection = selection = [
|
4576
4691
|
[w0 = dim === Y ? W : point0[0], n0 = dim === X ? N : point0[1]],
|
4577
4692
|
[e0 = dim === Y ? E : w0, s0 = dim === X ? S : n0]
|
4578
4693
|
];
|
4579
4694
|
} else {
|
4580
|
-
w0 = selection
|
4581
|
-
n0 = selection
|
4582
|
-
e0 = selection
|
4583
|
-
s0 = selection
|
4695
|
+
w0 = selection[0][0];
|
4696
|
+
n0 = selection[0][1];
|
4697
|
+
e0 = selection[1][0];
|
4698
|
+
s0 = selection[1][1];
|
4584
4699
|
}
|
4585
4700
|
|
4586
4701
|
w1 = w0;
|
@@ -4595,15 +4710,15 @@ function brush$1(dim) {
|
|
4595
4710
|
.attr("cursor", cursors[type]);
|
4596
4711
|
|
4597
4712
|
if (exports.event.touches) {
|
4598
|
-
|
4599
|
-
|
4600
|
-
.on("touchend.brush touchcancel.brush", ended, true);
|
4713
|
+
emit.moved = moved;
|
4714
|
+
emit.ended = ended;
|
4601
4715
|
} else {
|
4602
4716
|
var view = select(exports.event.view)
|
4603
|
-
.on("keydown.brush", keydowned, true)
|
4604
|
-
.on("keyup.brush", keyupped, true)
|
4605
4717
|
.on("mousemove.brush", moved, true)
|
4606
4718
|
.on("mouseup.brush", ended, true);
|
4719
|
+
if (keys) view
|
4720
|
+
.on("keydown.brush", keydowned, true)
|
4721
|
+
.on("keyup.brush", keyupped, true);
|
4607
4722
|
|
4608
4723
|
dragDisable(exports.event.view);
|
4609
4724
|
}
|
@@ -4614,12 +4729,12 @@ function brush$1(dim) {
|
|
4614
4729
|
emit.start();
|
4615
4730
|
|
4616
4731
|
function moved() {
|
4617
|
-
var point1 =
|
4732
|
+
var point1 = pointer(that);
|
4618
4733
|
if (shifting && !lockX && !lockY) {
|
4619
|
-
if (Math.abs(point1[0] - point
|
4734
|
+
if (Math.abs(point1[0] - point[0]) > Math.abs(point1[1] - point[1])) lockY = true;
|
4620
4735
|
else lockX = true;
|
4621
4736
|
}
|
4622
|
-
point
|
4737
|
+
point = point1;
|
4623
4738
|
moving = true;
|
4624
4739
|
noevent$1();
|
4625
4740
|
move();
|
@@ -4628,8 +4743,8 @@ function brush$1(dim) {
|
|
4628
4743
|
function move() {
|
4629
4744
|
var t;
|
4630
4745
|
|
4631
|
-
dx = point
|
4632
|
-
dy = point
|
4746
|
+
dx = point[0] - point0[0];
|
4747
|
+
dy = point[1] - point0[1];
|
4633
4748
|
|
4634
4749
|
switch (mode) {
|
4635
4750
|
case MODE_SPACE:
|
@@ -4666,14 +4781,14 @@ function brush$1(dim) {
|
|
4666
4781
|
if (type in flipY) overlay.attr("cursor", cursors[type = flipY[type]]);
|
4667
4782
|
}
|
4668
4783
|
|
4669
|
-
if (state.selection) selection
|
4670
|
-
if (lockX) w1 = selection
|
4671
|
-
if (lockY) n1 = selection
|
4784
|
+
if (state.selection) selection = state.selection; // May be set by brush.move!
|
4785
|
+
if (lockX) w1 = selection[0][0], e1 = selection[1][0];
|
4786
|
+
if (lockY) n1 = selection[0][1], s1 = selection[1][1];
|
4672
4787
|
|
4673
|
-
if (selection
|
4674
|
-
|| selection
|
4675
|
-
|| selection
|
4676
|
-
|| selection
|
4788
|
+
if (selection[0][0] !== w1
|
4789
|
+
|| selection[0][1] !== n1
|
4790
|
+
|| selection[1][0] !== e1
|
4791
|
+
|| selection[1][1] !== s1) {
|
4677
4792
|
state.selection = [[w1, n1], [e1, s1]];
|
4678
4793
|
redraw.call(that);
|
4679
4794
|
emit.brush();
|
@@ -4686,15 +4801,14 @@ function brush$1(dim) {
|
|
4686
4801
|
if (exports.event.touches.length) return;
|
4687
4802
|
if (touchending) clearTimeout(touchending);
|
4688
4803
|
touchending = setTimeout(function() { touchending = null; }, 500); // Ghost clicks are delayed!
|
4689
|
-
group.on("touchmove.brush touchend.brush touchcancel.brush", null);
|
4690
4804
|
} else {
|
4691
4805
|
yesdrag(exports.event.view, moving);
|
4692
4806
|
view.on("keydown.brush keyup.brush mousemove.brush mouseup.brush", null);
|
4693
4807
|
}
|
4694
4808
|
group.attr("pointer-events", "all");
|
4695
4809
|
overlay.attr("cursor", cursors.overlay);
|
4696
|
-
if (state.selection) selection
|
4697
|
-
if (empty$1(selection
|
4810
|
+
if (state.selection) selection = state.selection; // May be set by brush.move (on start)!
|
4811
|
+
if (empty$1(selection)) state.selection = null, redraw.call(that);
|
4698
4812
|
emit.end();
|
4699
4813
|
}
|
4700
4814
|
|
@@ -4768,25 +4882,41 @@ function brush$1(dim) {
|
|
4768
4882
|
}
|
4769
4883
|
}
|
4770
4884
|
|
4885
|
+
function touchmoved() {
|
4886
|
+
emitter(this, arguments).moved();
|
4887
|
+
}
|
4888
|
+
|
4889
|
+
function touchended() {
|
4890
|
+
emitter(this, arguments).ended();
|
4891
|
+
}
|
4892
|
+
|
4771
4893
|
function initialize() {
|
4772
4894
|
var state = this.__brush || {selection: null};
|
4773
|
-
state.extent = extent.apply(this, arguments);
|
4895
|
+
state.extent = number2(extent.apply(this, arguments));
|
4774
4896
|
state.dim = dim;
|
4775
4897
|
return state;
|
4776
4898
|
}
|
4777
4899
|
|
4778
4900
|
brush.extent = function(_) {
|
4779
|
-
return arguments.length ? (extent = typeof _ === "function" ? _ : constant$4(
|
4901
|
+
return arguments.length ? (extent = typeof _ === "function" ? _ : constant$4(number2(_)), brush) : extent;
|
4780
4902
|
};
|
4781
4903
|
|
4782
4904
|
brush.filter = function(_) {
|
4783
4905
|
return arguments.length ? (filter = typeof _ === "function" ? _ : constant$4(!!_), brush) : filter;
|
4784
4906
|
};
|
4785
4907
|
|
4908
|
+
brush.touchable = function(_) {
|
4909
|
+
return arguments.length ? (touchable = typeof _ === "function" ? _ : constant$4(!!_), brush) : touchable;
|
4910
|
+
};
|
4911
|
+
|
4786
4912
|
brush.handleSize = function(_) {
|
4787
4913
|
return arguments.length ? (handleSize = +_, brush) : handleSize;
|
4788
4914
|
};
|
4789
4915
|
|
4916
|
+
brush.keyModifiers = function(_) {
|
4917
|
+
return arguments.length ? (keys = !!_, brush) : keys;
|
4918
|
+
};
|
4919
|
+
|
4790
4920
|
brush.on = function() {
|
4791
4921
|
var value = listeners.on.apply(listeners, arguments);
|
4792
4922
|
return value === listeners ? brush : value;
|
@@ -5013,7 +5143,7 @@ Path.prototype = path.prototype = {
|
|
5013
5143
|
}
|
5014
5144
|
},
|
5015
5145
|
arc: function(x, y, r, a0, a1, ccw) {
|
5016
|
-
x = +x, y = +y, r = +r;
|
5146
|
+
x = +x, y = +y, r = +r, ccw = !!ccw;
|
5017
5147
|
var dx = r * Math.cos(a0),
|
5018
5148
|
dy = r * Math.sin(a0),
|
5019
5149
|
x0 = x + dx,
|
@@ -5413,11 +5543,11 @@ var cases = [
|
|
5413
5543
|
function contours() {
|
5414
5544
|
var dx = 1,
|
5415
5545
|
dy = 1,
|
5416
|
-
threshold
|
5546
|
+
threshold = thresholdSturges,
|
5417
5547
|
smooth = smoothLinear;
|
5418
5548
|
|
5419
5549
|
function contours(values) {
|
5420
|
-
var tz = threshold
|
5550
|
+
var tz = threshold(values);
|
5421
5551
|
|
5422
5552
|
// Convert number of thresholds into uniform thresholds.
|
5423
5553
|
if (!Array.isArray(tz)) {
|
@@ -5577,7 +5707,7 @@ function contours() {
|
|
5577
5707
|
};
|
5578
5708
|
|
5579
5709
|
contours.thresholds = function(_) {
|
5580
|
-
return arguments.length ? (threshold
|
5710
|
+
return arguments.length ? (threshold = typeof _ === "function" ? _ : Array.isArray(_) ? constant$6(slice$3.call(_)) : constant$6(_), contours) : threshold;
|
5581
5711
|
};
|
5582
5712
|
|
5583
5713
|
contours.smooth = function(_) {
|
@@ -5654,7 +5784,7 @@ function density() {
|
|
5654
5784
|
o = r * 3, // grid offset, to pad for blur
|
5655
5785
|
n = (dx + o * 2) >> k, // grid width
|
5656
5786
|
m = (dy + o * 2) >> k, // grid height
|
5657
|
-
threshold
|
5787
|
+
threshold = constant$6(20);
|
5658
5788
|
|
5659
5789
|
function density(data) {
|
5660
5790
|
var values0 = new Float32Array(n * m),
|
@@ -5677,7 +5807,7 @@ function density() {
|
|
5677
5807
|
blurX({width: n, height: m, data: values0}, {width: n, height: m, data: values1}, r >> k);
|
5678
5808
|
blurY({width: n, height: m, data: values1}, {width: n, height: m, data: values0}, r >> k);
|
5679
5809
|
|
5680
|
-
var tz = threshold
|
5810
|
+
var tz = threshold(values0);
|
5681
5811
|
|
5682
5812
|
// Convert number of thresholds into uniform thresholds.
|
5683
5813
|
if (!Array.isArray(tz)) {
|
@@ -5747,7 +5877,7 @@ function density() {
|
|
5747
5877
|
};
|
5748
5878
|
|
5749
5879
|
density.thresholds = function(_) {
|
5750
|
-
return arguments.length ? (threshold
|
5880
|
+
return arguments.length ? (threshold = typeof _ === "function" ? _ : Array.isArray(_) ? constant$6(slice$3.call(_)) : constant$6(_), density) : threshold;
|
5751
5881
|
};
|
5752
5882
|
|
5753
5883
|
density.bandwidth = function(_) {
|
@@ -5767,7 +5897,7 @@ var EOL = {},
|
|
5767
5897
|
|
5768
5898
|
function objectConverter(columns) {
|
5769
5899
|
return new Function("d", "return {" + columns.map(function(name, i) {
|
5770
|
-
return JSON.stringify(name) + ": d[" + i + "]";
|
5900
|
+
return JSON.stringify(name) + ": d[" + i + "] || \"\"";
|
5771
5901
|
}).join(",") + "}");
|
5772
5902
|
}
|
5773
5903
|
|
@@ -5811,7 +5941,7 @@ function formatDate(date) {
|
|
5811
5941
|
seconds = date.getUTCSeconds(),
|
5812
5942
|
milliseconds = date.getUTCMilliseconds();
|
5813
5943
|
return isNaN(date) ? "Invalid Date"
|
5814
|
-
: formatYear(date.getUTCFullYear()
|
5944
|
+
: formatYear(date.getUTCFullYear()) + "-" + pad(date.getUTCMonth() + 1, 2) + "-" + pad(date.getUTCDate(), 2)
|
5815
5945
|
+ (milliseconds ? "T" + pad(hours, 2) + ":" + pad(minutes, 2) + ":" + pad(seconds, 2) + "." + pad(milliseconds, 3) + "Z"
|
5816
5946
|
: seconds ? "T" + pad(hours, 2) + ":" + pad(minutes, 2) + ":" + pad(seconds, 2) + "Z"
|
5817
5947
|
: minutes || hours ? "T" + pad(hours, 2) + ":" + pad(minutes, 2) + "Z"
|
@@ -5918,7 +6048,9 @@ function dsvFormat(delimiter) {
|
|
5918
6048
|
parseRows: parseRows,
|
5919
6049
|
format: format,
|
5920
6050
|
formatBody: formatBody,
|
5921
|
-
formatRows: formatRows
|
6051
|
+
formatRows: formatRows,
|
6052
|
+
formatRow: formatRow,
|
6053
|
+
formatValue: formatValue
|
5922
6054
|
};
|
5923
6055
|
}
|
5924
6056
|
|
@@ -5929,6 +6061,8 @@ var csvParseRows = csv.parseRows;
|
|
5929
6061
|
var csvFormat = csv.format;
|
5930
6062
|
var csvFormatBody = csv.formatBody;
|
5931
6063
|
var csvFormatRows = csv.formatRows;
|
6064
|
+
var csvFormatRow = csv.formatRow;
|
6065
|
+
var csvFormatValue = csv.formatValue;
|
5932
6066
|
|
5933
6067
|
var tsv = dsvFormat("\t");
|
5934
6068
|
|
@@ -5937,22 +6071,30 @@ var tsvParseRows = tsv.parseRows;
|
|
5937
6071
|
var tsvFormat = tsv.format;
|
5938
6072
|
var tsvFormatBody = tsv.formatBody;
|
5939
6073
|
var tsvFormatRows = tsv.formatRows;
|
6074
|
+
var tsvFormatRow = tsv.formatRow;
|
6075
|
+
var tsvFormatValue = tsv.formatValue;
|
5940
6076
|
|
5941
6077
|
function autoType(object) {
|
5942
6078
|
for (var key in object) {
|
5943
|
-
var value = object[key].trim(), number;
|
6079
|
+
var value = object[key].trim(), number, m;
|
5944
6080
|
if (!value) value = null;
|
5945
6081
|
else if (value === "true") value = true;
|
5946
6082
|
else if (value === "false") value = false;
|
5947
6083
|
else if (value === "NaN") value = NaN;
|
5948
6084
|
else if (!isNaN(number = +value)) value = number;
|
5949
|
-
else if (/^([-+]\d{2})?\d{4}(-\d{2}(-\d{2})?)?(T\d{2}:\d{2}(:\d{2}(\.\d{3})?)?(Z|[-+]\d{2}:\d{2})?)
|
6085
|
+
else if (m = value.match(/^([-+]\d{2})?\d{4}(-\d{2}(-\d{2})?)?(T\d{2}:\d{2}(:\d{2}(\.\d{3})?)?(Z|[-+]\d{2}:\d{2})?)?$/)) {
|
6086
|
+
if (fixtz && !!m[4] && !m[7]) value = value.replace(/-/g, "/").replace(/T/, " ");
|
6087
|
+
value = new Date(value);
|
6088
|
+
}
|
5950
6089
|
else continue;
|
5951
6090
|
object[key] = value;
|
5952
6091
|
}
|
5953
6092
|
return object;
|
5954
6093
|
}
|
5955
6094
|
|
6095
|
+
// https://github.com/d3/d3-dsv/issues/45
|
6096
|
+
var fixtz = new Date("2019-01-01T00:00").getHours() || new Date("2019-07-01T00:00").getHours();
|
6097
|
+
|
5956
6098
|
function responseBlob(response) {
|
5957
6099
|
if (!response.ok) throw new Error(response.status + " " + response.statusText);
|
5958
6100
|
return response.blob();
|
@@ -6021,8 +6163,8 @@ function json(input, init) {
|
|
6021
6163
|
|
6022
6164
|
function parser(type) {
|
6023
6165
|
return function(input, init) {
|
6024
|
-
return text(input, init).then(function(text
|
6025
|
-
return (new DOMParser).parseFromString(text
|
6166
|
+
return text(input, init).then(function(text) {
|
6167
|
+
return (new DOMParser).parseFromString(text, type);
|
6026
6168
|
});
|
6027
6169
|
};
|
6028
6170
|
}
|
@@ -7139,24 +7281,35 @@ function formatNumerals(numerals) {
|
|
7139
7281
|
var re = /^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;
|
7140
7282
|
|
7141
7283
|
function formatSpecifier(specifier) {
|
7142
|
-
|
7284
|
+
if (!(match = re.exec(specifier))) throw new Error("invalid format: " + specifier);
|
7285
|
+
var match;
|
7286
|
+
return new FormatSpecifier({
|
7287
|
+
fill: match[1],
|
7288
|
+
align: match[2],
|
7289
|
+
sign: match[3],
|
7290
|
+
symbol: match[4],
|
7291
|
+
zero: match[5],
|
7292
|
+
width: match[6],
|
7293
|
+
comma: match[7],
|
7294
|
+
precision: match[8] && match[8].slice(1),
|
7295
|
+
trim: match[9],
|
7296
|
+
type: match[10]
|
7297
|
+
});
|
7143
7298
|
}
|
7144
7299
|
|
7145
7300
|
formatSpecifier.prototype = FormatSpecifier.prototype; // instanceof
|
7146
7301
|
|
7147
7302
|
function FormatSpecifier(specifier) {
|
7148
|
-
|
7149
|
-
|
7150
|
-
this.
|
7151
|
-
this.
|
7152
|
-
this.
|
7153
|
-
this.
|
7154
|
-
this.
|
7155
|
-
this.
|
7156
|
-
this.
|
7157
|
-
this.
|
7158
|
-
this.trim = !!match[9];
|
7159
|
-
this.type = match[10] || "";
|
7303
|
+
this.fill = specifier.fill === undefined ? " " : specifier.fill + "";
|
7304
|
+
this.align = specifier.align === undefined ? ">" : specifier.align + "";
|
7305
|
+
this.sign = specifier.sign === undefined ? "-" : specifier.sign + "";
|
7306
|
+
this.symbol = specifier.symbol === undefined ? "" : specifier.symbol + "";
|
7307
|
+
this.zero = !!specifier.zero;
|
7308
|
+
this.width = specifier.width === undefined ? undefined : +specifier.width;
|
7309
|
+
this.comma = !!specifier.comma;
|
7310
|
+
this.precision = specifier.precision === undefined ? undefined : +specifier.precision;
|
7311
|
+
this.trim = !!specifier.trim;
|
7312
|
+
this.type = specifier.type === undefined ? "" : specifier.type + "";
|
7160
7313
|
}
|
7161
7314
|
|
7162
7315
|
FormatSpecifier.prototype.toString = function() {
|
@@ -7165,9 +7318,9 @@ FormatSpecifier.prototype.toString = function() {
|
|
7165
7318
|
+ this.sign
|
7166
7319
|
+ this.symbol
|
7167
7320
|
+ (this.zero ? "0" : "")
|
7168
|
-
+ (this.width
|
7321
|
+
+ (this.width === undefined ? "" : Math.max(1, this.width | 0))
|
7169
7322
|
+ (this.comma ? "," : "")
|
7170
|
-
+ (this.precision
|
7323
|
+
+ (this.precision === undefined ? "" : "." + Math.max(0, this.precision | 0))
|
7171
7324
|
+ (this.trim ? "~" : "")
|
7172
7325
|
+ this.type;
|
7173
7326
|
};
|
@@ -7178,7 +7331,7 @@ function formatTrim(s) {
|
|
7178
7331
|
switch (s[i]) {
|
7179
7332
|
case ".": i0 = i1 = i; break;
|
7180
7333
|
case "0": if (i0 === 0) i0 = i; i1 = i; break;
|
7181
|
-
default: if (
|
7334
|
+
default: if (!+s[i]) break out; if (i0 > 0) i0 = 0; break;
|
7182
7335
|
}
|
7183
7336
|
}
|
7184
7337
|
return i0 > 0 ? s.slice(0, i0) + s.slice(i1 + 1) : s;
|
@@ -7229,14 +7382,18 @@ function identity$3(x) {
|
|
7229
7382
|
return x;
|
7230
7383
|
}
|
7231
7384
|
|
7232
|
-
var
|
7385
|
+
var map$2 = Array.prototype.map,
|
7386
|
+
prefixes = ["y","z","a","f","p","n","\xB5","m","","k","M","G","T","P","E","Z","Y"];
|
7233
7387
|
|
7234
7388
|
function formatLocale(locale) {
|
7235
|
-
var group = locale.grouping
|
7236
|
-
|
7237
|
-
|
7238
|
-
|
7239
|
-
|
7389
|
+
var group = locale.grouping === undefined || locale.thousands === undefined ? identity$3 : formatGroup(map$2.call(locale.grouping, Number), locale.thousands + ""),
|
7390
|
+
currencyPrefix = locale.currency === undefined ? "" : locale.currency[0] + "",
|
7391
|
+
currencySuffix = locale.currency === undefined ? "" : locale.currency[1] + "",
|
7392
|
+
decimal = locale.decimal === undefined ? "." : locale.decimal + "",
|
7393
|
+
numerals = locale.numerals === undefined ? identity$3 : formatNumerals(map$2.call(locale.numerals, String)),
|
7394
|
+
percent = locale.percent === undefined ? "%" : locale.percent + "",
|
7395
|
+
minus = locale.minus === undefined ? "-" : locale.minus + "",
|
7396
|
+
nan = locale.nan === undefined ? "NaN" : locale.nan + "";
|
7240
7397
|
|
7241
7398
|
function newFormat(specifier) {
|
7242
7399
|
specifier = formatSpecifier(specifier);
|
@@ -7256,15 +7413,15 @@ function formatLocale(locale) {
|
|
7256
7413
|
if (type === "n") comma = true, type = "g";
|
7257
7414
|
|
7258
7415
|
// The "" type, and any invalid type, is an alias for ".12~g".
|
7259
|
-
else if (!formatTypes[type]) precision
|
7416
|
+
else if (!formatTypes[type]) precision === undefined && (precision = 12), trim = true, type = "g";
|
7260
7417
|
|
7261
7418
|
// If zero fill is specified, padding goes after sign and before digits.
|
7262
7419
|
if (zero || (fill === "0" && align === "=")) zero = true, fill = "0", align = "=";
|
7263
7420
|
|
7264
7421
|
// Compute the prefix and suffix.
|
7265
7422
|
// For SI-prefix, the suffix is lazily computed.
|
7266
|
-
var prefix = symbol === "$" ?
|
7267
|
-
suffix = symbol === "$" ?
|
7423
|
+
var prefix = symbol === "$" ? currencyPrefix : symbol === "#" && /[boxX]/.test(type) ? "0" + type.toLowerCase() : "",
|
7424
|
+
suffix = symbol === "$" ? currencySuffix : /[%p]/.test(type) ? percent : "";
|
7268
7425
|
|
7269
7426
|
// What format function should we use?
|
7270
7427
|
// Is this an integer type?
|
@@ -7276,7 +7433,7 @@ function formatLocale(locale) {
|
|
7276
7433
|
// or clamp the specified precision to the supported range.
|
7277
7434
|
// For significant precision, it must be in [1, 21].
|
7278
7435
|
// For fixed precision, it must be in [0, 20].
|
7279
|
-
precision = precision
|
7436
|
+
precision = precision === undefined ? 6
|
7280
7437
|
: /[gprs]/.test(type) ? Math.max(1, Math.min(21, precision))
|
7281
7438
|
: Math.max(0, Math.min(20, precision));
|
7282
7439
|
|
@@ -7291,18 +7448,20 @@ function formatLocale(locale) {
|
|
7291
7448
|
} else {
|
7292
7449
|
value = +value;
|
7293
7450
|
|
7451
|
+
// Determine the sign. -0 is not less than 0, but 1 / -0 is!
|
7452
|
+
var valueNegative = value < 0 || 1 / value < 0;
|
7453
|
+
|
7294
7454
|
// Perform the initial formatting.
|
7295
|
-
|
7296
|
-
value = formatType(Math.abs(value), precision);
|
7455
|
+
value = isNaN(value) ? nan : formatType(Math.abs(value), precision);
|
7297
7456
|
|
7298
7457
|
// Trim insignificant zeros.
|
7299
7458
|
if (trim) value = formatTrim(value);
|
7300
7459
|
|
7301
|
-
// If a negative value rounds to zero
|
7302
|
-
if (valueNegative && +value === 0) valueNegative = false;
|
7460
|
+
// If a negative value rounds to zero after formatting, and no explicit positive sign is requested, hide the sign.
|
7461
|
+
if (valueNegative && +value === 0 && sign !== "+") valueNegative = false;
|
7303
7462
|
|
7304
7463
|
// Compute the prefix and suffix.
|
7305
|
-
valuePrefix = (valueNegative ? (sign === "(" ? sign :
|
7464
|
+
valuePrefix = (valueNegative ? (sign === "(" ? sign : minus) : sign === "-" || sign === "(" ? "" : sign) + valuePrefix;
|
7306
7465
|
valueSuffix = (type === "s" ? prefixes[8 + prefixExponent / 3] : "") + valueSuffix + (valueNegative && sign === "(" ? ")" : "");
|
7307
7466
|
|
7308
7467
|
// Break the formatted value into the integer “value” part that can be
|
@@ -7369,7 +7528,8 @@ defaultLocale({
|
|
7369
7528
|
decimal: ".",
|
7370
7529
|
thousands: ",",
|
7371
7530
|
grouping: [3],
|
7372
|
-
currency: ["$", ""]
|
7531
|
+
currency: ["$", ""],
|
7532
|
+
minus: "-"
|
7373
7533
|
});
|
7374
7534
|
|
7375
7535
|
function defaultLocale(definition) {
|
@@ -7670,6 +7830,9 @@ var boundsStream = {
|
|
7670
7830
|
else if (deltaSum > epsilon$2) phi1 = 90;
|
7671
7831
|
else if (deltaSum < -epsilon$2) phi0 = -90;
|
7672
7832
|
range[0] = lambda0$1, range[1] = lambda1;
|
7833
|
+
},
|
7834
|
+
sphere: function() {
|
7835
|
+
lambda0$1 = -(lambda1 = 180), phi0 = -(phi1 = 90);
|
7673
7836
|
}
|
7674
7837
|
};
|
7675
7838
|
|
@@ -7688,14 +7851,14 @@ function linePoint(lambda, phi) {
|
|
7688
7851
|
cartesianNormalizeInPlace(inflection);
|
7689
7852
|
inflection = spherical(inflection);
|
7690
7853
|
var delta = lambda - lambda2,
|
7691
|
-
sign
|
7692
|
-
lambdai = inflection[0] * degrees$1 * sign
|
7854
|
+
sign = delta > 0 ? 1 : -1,
|
7855
|
+
lambdai = inflection[0] * degrees$1 * sign,
|
7693
7856
|
phii,
|
7694
7857
|
antimeridian = abs(delta) > 180;
|
7695
|
-
if (antimeridian ^ (sign
|
7858
|
+
if (antimeridian ^ (sign * lambda2 < lambdai && lambdai < sign * lambda)) {
|
7696
7859
|
phii = inflection[1] * degrees$1;
|
7697
7860
|
if (phii > phi1) phi1 = phii;
|
7698
|
-
} else if (lambdai = (lambdai + 360) % 360 - 180, antimeridian ^ (sign
|
7861
|
+
} else if (lambdai = (lambdai + 360) % 360 - 180, antimeridian ^ (sign * lambda2 < lambdai && lambdai < sign * lambda)) {
|
7699
7862
|
phii = -inflection[1] * degrees$1;
|
7700
7863
|
if (phii < phi0) phi0 = phii;
|
7701
7864
|
} else {
|
@@ -8240,8 +8403,15 @@ function link$1(array) {
|
|
8240
8403
|
|
8241
8404
|
var sum$1 = adder();
|
8242
8405
|
|
8406
|
+
function longitude(point) {
|
8407
|
+
if (abs(point[0]) <= pi$3)
|
8408
|
+
return point[0];
|
8409
|
+
else
|
8410
|
+
return sign(point[0]) * ((abs(point[0]) + pi$3) % tau$3 - pi$3);
|
8411
|
+
}
|
8412
|
+
|
8243
8413
|
function polygonContains(polygon, point) {
|
8244
|
-
var lambda = point
|
8414
|
+
var lambda = longitude(point),
|
8245
8415
|
phi = point[1],
|
8246
8416
|
sinPhi = sin$1(phi),
|
8247
8417
|
normal = [sin$1(lambda), -cos$1(lambda), 0],
|
@@ -8258,25 +8428,25 @@ function polygonContains(polygon, point) {
|
|
8258
8428
|
var ring,
|
8259
8429
|
m,
|
8260
8430
|
point0 = ring[m - 1],
|
8261
|
-
lambda0 = point0
|
8431
|
+
lambda0 = longitude(point0),
|
8262
8432
|
phi0 = point0[1] / 2 + quarterPi,
|
8263
8433
|
sinPhi0 = sin$1(phi0),
|
8264
8434
|
cosPhi0 = cos$1(phi0);
|
8265
8435
|
|
8266
8436
|
for (var j = 0; j < m; ++j, lambda0 = lambda1, sinPhi0 = sinPhi1, cosPhi0 = cosPhi1, point0 = point1) {
|
8267
8437
|
var point1 = ring[j],
|
8268
|
-
lambda1 = point1
|
8438
|
+
lambda1 = longitude(point1),
|
8269
8439
|
phi1 = point1[1] / 2 + quarterPi,
|
8270
8440
|
sinPhi1 = sin$1(phi1),
|
8271
8441
|
cosPhi1 = cos$1(phi1),
|
8272
8442
|
delta = lambda1 - lambda0,
|
8273
|
-
sign
|
8274
|
-
absDelta = sign
|
8443
|
+
sign = delta >= 0 ? 1 : -1,
|
8444
|
+
absDelta = sign * delta,
|
8275
8445
|
antimeridian = absDelta > pi$3,
|
8276
8446
|
k = sinPhi0 * sinPhi1;
|
8277
8447
|
|
8278
|
-
sum$1.add(atan2(k * sign
|
8279
|
-
angle += antimeridian ? delta + sign
|
8448
|
+
sum$1.add(atan2(k * sign * sin$1(absDelta), cosPhi0 * cosPhi1 + k * cos$1(absDelta)));
|
8449
|
+
angle += antimeridian ? delta + sign * tau$3 : delta;
|
8280
8450
|
|
8281
8451
|
// Are the longitudes either side of the point’s meridian (lambda),
|
8282
8452
|
// and are the latitudes smaller than the parallel (phi)?
|
@@ -9057,10 +9227,23 @@ function containsPoint(coordinates, point) {
|
|
9057
9227
|
}
|
9058
9228
|
|
9059
9229
|
function containsLine(coordinates, point) {
|
9060
|
-
var
|
9061
|
-
|
9062
|
-
|
9063
|
-
|
9230
|
+
var ao, bo, ab;
|
9231
|
+
for (var i = 0, n = coordinates.length; i < n; i++) {
|
9232
|
+
bo = distance(coordinates[i], point);
|
9233
|
+
if (bo === 0) return true;
|
9234
|
+
if (i > 0) {
|
9235
|
+
ab = distance(coordinates[i], coordinates[i - 1]);
|
9236
|
+
if (
|
9237
|
+
ab > 0 &&
|
9238
|
+
ao <= ab &&
|
9239
|
+
bo <= ab &&
|
9240
|
+
(ao + bo - ab) * (1 - Math.pow((ao - bo) / ab, 2)) < epsilon2$1 * ab
|
9241
|
+
)
|
9242
|
+
return true;
|
9243
|
+
}
|
9244
|
+
ao = bo;
|
9245
|
+
}
|
9246
|
+
return false;
|
9064
9247
|
}
|
9065
9248
|
|
9066
9249
|
function containsPolygon(coordinates, point) {
|
@@ -9772,17 +9955,18 @@ function transformRotate(rotate) {
|
|
9772
9955
|
});
|
9773
9956
|
}
|
9774
9957
|
|
9775
|
-
function scaleTranslate(k, dx, dy) {
|
9776
|
-
function transform
|
9958
|
+
function scaleTranslate(k, dx, dy, sx, sy) {
|
9959
|
+
function transform(x, y) {
|
9960
|
+
x *= sx; y *= sy;
|
9777
9961
|
return [dx + k * x, dy - k * y];
|
9778
9962
|
}
|
9779
|
-
transform
|
9780
|
-
return [(x - dx) / k, (dy - y) / k];
|
9963
|
+
transform.invert = function(x, y) {
|
9964
|
+
return [(x - dx) / k * sx, (dy - y) / k * sy];
|
9781
9965
|
};
|
9782
|
-
return transform
|
9966
|
+
return transform;
|
9783
9967
|
}
|
9784
9968
|
|
9785
|
-
function scaleTranslateRotate(k, dx, dy, alpha) {
|
9969
|
+
function scaleTranslateRotate(k, dx, dy, sx, sy, alpha) {
|
9786
9970
|
var cosAlpha = cos$1(alpha),
|
9787
9971
|
sinAlpha = sin$1(alpha),
|
9788
9972
|
a = cosAlpha * k,
|
@@ -9791,13 +9975,14 @@ function scaleTranslateRotate(k, dx, dy, alpha) {
|
|
9791
9975
|
bi = sinAlpha / k,
|
9792
9976
|
ci = (sinAlpha * dy - cosAlpha * dx) / k,
|
9793
9977
|
fi = (sinAlpha * dx + cosAlpha * dy) / k;
|
9794
|
-
function transform
|
9978
|
+
function transform(x, y) {
|
9979
|
+
x *= sx; y *= sy;
|
9795
9980
|
return [a * x - b * y + dx, dy - b * x - a * y];
|
9796
9981
|
}
|
9797
|
-
transform
|
9798
|
-
return [ai * x - bi * y + ci, fi - bi * x - ai * y];
|
9982
|
+
transform.invert = function(x, y) {
|
9983
|
+
return [sx * (ai * x - bi * y + ci), sy * (fi - bi * x - ai * y)];
|
9799
9984
|
};
|
9800
|
-
return transform
|
9985
|
+
return transform;
|
9801
9986
|
}
|
9802
9987
|
|
9803
9988
|
function projection(project) {
|
@@ -9810,7 +9995,9 @@ function projectionMutator(projectAt) {
|
|
9810
9995
|
x = 480, y = 250, // translate
|
9811
9996
|
lambda = 0, phi = 0, // center
|
9812
9997
|
deltaLambda = 0, deltaPhi = 0, deltaGamma = 0, rotate, // pre-rotate
|
9813
|
-
alpha = 0, // post-rotate
|
9998
|
+
alpha = 0, // post-rotate angle
|
9999
|
+
sx = 1, // reflectX
|
10000
|
+
sy = 1, // reflectX
|
9814
10001
|
theta = null, preclip = clipAntimeridian, // pre-clip angle
|
9815
10002
|
x0 = null, y0, x1, y1, postclip = identity$4, // post-clip extent
|
9816
10003
|
delta2 = 0.5, // precision
|
@@ -9869,6 +10056,14 @@ function projectionMutator(projectAt) {
|
|
9869
10056
|
return arguments.length ? (alpha = _ % 360 * radians, recenter()) : alpha * degrees$1;
|
9870
10057
|
};
|
9871
10058
|
|
10059
|
+
projection.reflectX = function(_) {
|
10060
|
+
return arguments.length ? (sx = _ ? -1 : 1, recenter()) : sx < 0;
|
10061
|
+
};
|
10062
|
+
|
10063
|
+
projection.reflectY = function(_) {
|
10064
|
+
return arguments.length ? (sy = _ ? -1 : 1, recenter()) : sy < 0;
|
10065
|
+
};
|
10066
|
+
|
9872
10067
|
projection.precision = function(_) {
|
9873
10068
|
return arguments.length ? (projectResample = resample(projectTransform, delta2 = _ * _), reset()) : sqrt(delta2);
|
9874
10069
|
};
|
@@ -9890,10 +10085,10 @@ function projectionMutator(projectAt) {
|
|
9890
10085
|
};
|
9891
10086
|
|
9892
10087
|
function recenter() {
|
9893
|
-
var center = scaleTranslateRotate(k, 0, 0, alpha).apply(null, project(lambda, phi)),
|
9894
|
-
transform
|
10088
|
+
var center = scaleTranslateRotate(k, 0, 0, sx, sy, alpha).apply(null, project(lambda, phi)),
|
10089
|
+
transform = (alpha ? scaleTranslateRotate : scaleTranslate)(k, x - center[0], y - center[1], sx, sy, alpha);
|
9895
10090
|
rotate = rotateRadians(deltaLambda, deltaPhi, deltaGamma);
|
9896
|
-
projectTransform = compose(project, transform
|
10091
|
+
projectTransform = compose(project, transform);
|
9897
10092
|
projectRotateTransform = compose(rotate, projectTransform);
|
9898
10093
|
projectResample = resample(projectTransform, delta2);
|
9899
10094
|
return reset();
|
@@ -9952,8 +10147,11 @@ function conicEqualAreaRaw(y0, y1) {
|
|
9952
10147
|
}
|
9953
10148
|
|
9954
10149
|
project.invert = function(x, y) {
|
9955
|
-
var r0y = r0 - y
|
9956
|
-
|
10150
|
+
var r0y = r0 - y,
|
10151
|
+
l = atan2(x, abs(r0y)) * sign(r0y);
|
10152
|
+
if (r0y * n < 0)
|
10153
|
+
l -= pi$3 * sign(x) * sign(r0y);
|
10154
|
+
return [l / n, asin((c - (x * x + r0y * r0y) * n * n) / (2 * n))];
|
9957
10155
|
};
|
9958
10156
|
|
9959
10157
|
return project;
|
@@ -10202,8 +10400,11 @@ function conicConformalRaw(y0, y1) {
|
|
10202
10400
|
}
|
10203
10401
|
|
10204
10402
|
project.invert = function(x, y) {
|
10205
|
-
var fy = f - y, r = sign(n) * sqrt(x * x + fy * fy)
|
10206
|
-
|
10403
|
+
var fy = f - y, r = sign(n) * sqrt(x * x + fy * fy),
|
10404
|
+
l = atan2(x, abs(fy)) * sign(fy);
|
10405
|
+
if (fy * n < 0)
|
10406
|
+
l -= pi$3 * sign(x) * sign(fy);
|
10407
|
+
return [l / n, 2 * atan(pow(f / r, 1 / n)) - halfPi$2];
|
10207
10408
|
};
|
10208
10409
|
|
10209
10410
|
return project;
|
@@ -10239,8 +10440,11 @@ function conicEquidistantRaw(y0, y1) {
|
|
10239
10440
|
}
|
10240
10441
|
|
10241
10442
|
project.invert = function(x, y) {
|
10242
|
-
var gy = g - y
|
10243
|
-
|
10443
|
+
var gy = g - y,
|
10444
|
+
l = atan2(x, abs(gy)) * sign(gy);
|
10445
|
+
if (gy * n < 0)
|
10446
|
+
l -= pi$3 * sign(x) * sign(gy);
|
10447
|
+
return [l / n, g - sign(n) * sqrt(x * x + gy * gy)];
|
10244
10448
|
};
|
10245
10449
|
|
10246
10450
|
return project;
|
@@ -10299,62 +10503,84 @@ function gnomonic() {
|
|
10299
10503
|
.clipAngle(60);
|
10300
10504
|
}
|
10301
10505
|
|
10302
|
-
function scaleTranslate$1(kx, ky, tx, ty) {
|
10303
|
-
return kx === 1 && ky === 1 && tx === 0 && ty === 0 ? identity$4 : transformer({
|
10304
|
-
point: function(x, y) {
|
10305
|
-
this.stream.point(x * kx + tx, y * ky + ty);
|
10306
|
-
}
|
10307
|
-
});
|
10308
|
-
}
|
10309
|
-
|
10310
10506
|
function identity$5() {
|
10311
|
-
var k = 1, tx = 0, ty = 0, sx = 1, sy = 1,
|
10507
|
+
var k = 1, tx = 0, ty = 0, sx = 1, sy = 1, // scale, translate and reflect
|
10508
|
+
alpha = 0, ca, sa, // angle
|
10312
10509
|
x0 = null, y0, x1, y1, // clip extent
|
10510
|
+
kx = 1, ky = 1,
|
10511
|
+
transform = transformer({
|
10512
|
+
point: function(x, y) {
|
10513
|
+
var p = projection([x, y]);
|
10514
|
+
this.stream.point(p[0], p[1]);
|
10515
|
+
}
|
10516
|
+
}),
|
10313
10517
|
postclip = identity$4,
|
10314
10518
|
cache,
|
10315
|
-
cacheStream
|
10316
|
-
projection;
|
10519
|
+
cacheStream;
|
10317
10520
|
|
10318
10521
|
function reset() {
|
10522
|
+
kx = k * sx;
|
10523
|
+
ky = k * sy;
|
10319
10524
|
cache = cacheStream = null;
|
10320
10525
|
return projection;
|
10321
10526
|
}
|
10322
10527
|
|
10323
|
-
|
10324
|
-
|
10325
|
-
|
10326
|
-
|
10327
|
-
|
10328
|
-
|
10329
|
-
}
|
10330
|
-
|
10331
|
-
|
10332
|
-
|
10333
|
-
|
10334
|
-
|
10335
|
-
|
10336
|
-
|
10337
|
-
|
10338
|
-
},
|
10339
|
-
reflectX: function(_) {
|
10340
|
-
return arguments.length ? (transform$$1 = scaleTranslate$1(k * (sx = _ ? -1 : 1), k * sy, tx, ty), reset()) : sx < 0;
|
10341
|
-
},
|
10342
|
-
reflectY: function(_) {
|
10343
|
-
return arguments.length ? (transform$$1 = scaleTranslate$1(k * sx, k * (sy = _ ? -1 : 1), tx, ty), reset()) : sy < 0;
|
10344
|
-
},
|
10345
|
-
fitExtent: function(extent, object) {
|
10346
|
-
return fitExtent(projection, extent, object);
|
10347
|
-
},
|
10348
|
-
fitSize: function(size, object) {
|
10349
|
-
return fitSize(projection, size, object);
|
10350
|
-
},
|
10351
|
-
fitWidth: function(width, object) {
|
10352
|
-
return fitWidth(projection, width, object);
|
10353
|
-
},
|
10354
|
-
fitHeight: function(height, object) {
|
10355
|
-
return fitHeight(projection, height, object);
|
10528
|
+
function projection (p) {
|
10529
|
+
var x = p[0] * kx, y = p[1] * ky;
|
10530
|
+
if (alpha) {
|
10531
|
+
var t = y * ca - x * sa;
|
10532
|
+
x = x * ca + y * sa;
|
10533
|
+
y = t;
|
10534
|
+
}
|
10535
|
+
return [x + tx, y + ty];
|
10536
|
+
}
|
10537
|
+
projection.invert = function(p) {
|
10538
|
+
var x = p[0] - tx, y = p[1] - ty;
|
10539
|
+
if (alpha) {
|
10540
|
+
var t = y * ca + x * sa;
|
10541
|
+
x = x * ca - y * sa;
|
10542
|
+
y = t;
|
10356
10543
|
}
|
10544
|
+
return [x / kx, y / ky];
|
10545
|
+
};
|
10546
|
+
projection.stream = function(stream) {
|
10547
|
+
return cache && cacheStream === stream ? cache : cache = transform(postclip(cacheStream = stream));
|
10548
|
+
};
|
10549
|
+
projection.postclip = function(_) {
|
10550
|
+
return arguments.length ? (postclip = _, x0 = y0 = x1 = y1 = null, reset()) : postclip;
|
10551
|
+
};
|
10552
|
+
projection.clipExtent = function(_) {
|
10553
|
+
return arguments.length ? (postclip = _ == null ? (x0 = y0 = x1 = y1 = null, identity$4) : clipRectangle(x0 = +_[0][0], y0 = +_[0][1], x1 = +_[1][0], y1 = +_[1][1]), reset()) : x0 == null ? null : [[x0, y0], [x1, y1]];
|
10554
|
+
};
|
10555
|
+
projection.scale = function(_) {
|
10556
|
+
return arguments.length ? (k = +_, reset()) : k;
|
10557
|
+
};
|
10558
|
+
projection.translate = function(_) {
|
10559
|
+
return arguments.length ? (tx = +_[0], ty = +_[1], reset()) : [tx, ty];
|
10560
|
+
};
|
10561
|
+
projection.angle = function(_) {
|
10562
|
+
return arguments.length ? (alpha = _ % 360 * radians, sa = sin$1(alpha), ca = cos$1(alpha), reset()) : alpha * degrees$1;
|
10563
|
+
};
|
10564
|
+
projection.reflectX = function(_) {
|
10565
|
+
return arguments.length ? (sx = _ ? -1 : 1, reset()) : sx < 0;
|
10566
|
+
};
|
10567
|
+
projection.reflectY = function(_) {
|
10568
|
+
return arguments.length ? (sy = _ ? -1 : 1, reset()) : sy < 0;
|
10569
|
+
};
|
10570
|
+
projection.fitExtent = function(extent, object) {
|
10571
|
+
return fitExtent(projection, extent, object);
|
10357
10572
|
};
|
10573
|
+
projection.fitSize = function(size, object) {
|
10574
|
+
return fitSize(projection, size, object);
|
10575
|
+
};
|
10576
|
+
projection.fitWidth = function(width, object) {
|
10577
|
+
return fitWidth(projection, width, object);
|
10578
|
+
};
|
10579
|
+
projection.fitHeight = function(height, object) {
|
10580
|
+
return fitHeight(projection, height, object);
|
10581
|
+
};
|
10582
|
+
|
10583
|
+
return projection;
|
10358
10584
|
}
|
10359
10585
|
|
10360
10586
|
function naturalEarth1Raw(lambda, phi) {
|
@@ -11951,7 +12177,7 @@ function initInterpolator(domain, interpolator) {
|
|
11951
12177
|
|
11952
12178
|
var array$3 = Array.prototype;
|
11953
12179
|
|
11954
|
-
var map$
|
12180
|
+
var map$3 = array$3.map;
|
11955
12181
|
var slice$5 = array$3.slice;
|
11956
12182
|
|
11957
12183
|
var implicit = {name: "implicit"};
|
@@ -12000,7 +12226,7 @@ function band() {
|
|
12000
12226
|
var scale = ordinal().unknown(undefined),
|
12001
12227
|
domain = scale.domain,
|
12002
12228
|
ordinalRange = scale.range,
|
12003
|
-
range
|
12229
|
+
range = [0, 1],
|
12004
12230
|
step,
|
12005
12231
|
bandwidth,
|
12006
12232
|
round = false,
|
@@ -12012,9 +12238,9 @@ function band() {
|
|
12012
12238
|
|
12013
12239
|
function rescale() {
|
12014
12240
|
var n = domain().length,
|
12015
|
-
reverse = range
|
12016
|
-
start = range
|
12017
|
-
stop = range
|
12241
|
+
reverse = range[1] < range[0],
|
12242
|
+
start = range[reverse - 0],
|
12243
|
+
stop = range[1 - reverse];
|
12018
12244
|
step = (stop - start) / Math.max(1, n - paddingInner + paddingOuter * 2);
|
12019
12245
|
if (round) step = Math.floor(step);
|
12020
12246
|
start += (stop - start - step * (n - paddingInner)) * align;
|
@@ -12029,11 +12255,11 @@ function band() {
|
|
12029
12255
|
};
|
12030
12256
|
|
12031
12257
|
scale.range = function(_) {
|
12032
|
-
return arguments.length ? (range
|
12258
|
+
return arguments.length ? (range = [+_[0], +_[1]], rescale()) : range.slice();
|
12033
12259
|
};
|
12034
12260
|
|
12035
12261
|
scale.rangeRound = function(_) {
|
12036
|
-
return range
|
12262
|
+
return range = [+_[0], +_[1]], round = true, rescale();
|
12037
12263
|
};
|
12038
12264
|
|
12039
12265
|
scale.bandwidth = function() {
|
@@ -12065,7 +12291,7 @@ function band() {
|
|
12065
12291
|
};
|
12066
12292
|
|
12067
12293
|
scale.copy = function() {
|
12068
|
-
return band(domain(), range
|
12294
|
+
return band(domain(), range)
|
12069
12295
|
.round(round)
|
12070
12296
|
.paddingInner(paddingInner)
|
12071
12297
|
.paddingOuter(paddingOuter)
|
@@ -12123,14 +12349,14 @@ function clamper(domain) {
|
|
12123
12349
|
|
12124
12350
|
// normalize(a, b)(x) takes a domain value x in [a,b] and returns the corresponding parameter t in [0,1].
|
12125
12351
|
// interpolate(a, b)(t) takes a parameter t in [0,1] and returns the corresponding range value x in [a,b].
|
12126
|
-
function bimap(domain, range, interpolate
|
12352
|
+
function bimap(domain, range, interpolate) {
|
12127
12353
|
var d0 = domain[0], d1 = domain[1], r0 = range[0], r1 = range[1];
|
12128
|
-
if (d1 < d0) d0 = normalize(d1, d0), r0 = interpolate
|
12129
|
-
else d0 = normalize(d0, d1), r0 = interpolate
|
12354
|
+
if (d1 < d0) d0 = normalize(d1, d0), r0 = interpolate(r1, r0);
|
12355
|
+
else d0 = normalize(d0, d1), r0 = interpolate(r0, r1);
|
12130
12356
|
return function(x) { return r0(d0(x)); };
|
12131
12357
|
}
|
12132
12358
|
|
12133
|
-
function polymap(domain, range, interpolate
|
12359
|
+
function polymap(domain, range, interpolate) {
|
12134
12360
|
var j = Math.min(domain.length, range.length) - 1,
|
12135
12361
|
d = new Array(j),
|
12136
12362
|
r = new Array(j),
|
@@ -12144,7 +12370,7 @@ function polymap(domain, range, interpolate$$1) {
|
|
12144
12370
|
|
12145
12371
|
while (++i < j) {
|
12146
12372
|
d[i] = normalize(domain[i], domain[i + 1]);
|
12147
|
-
r[i] = interpolate
|
12373
|
+
r[i] = interpolate(range[i], range[i + 1]);
|
12148
12374
|
}
|
12149
12375
|
|
12150
12376
|
return function(x) {
|
@@ -12165,31 +12391,31 @@ function copy(source, target) {
|
|
12165
12391
|
function transformer$1() {
|
12166
12392
|
var domain = unit,
|
12167
12393
|
range = unit,
|
12168
|
-
interpolate
|
12394
|
+
interpolate = interpolateValue,
|
12169
12395
|
transform,
|
12170
12396
|
untransform,
|
12171
12397
|
unknown,
|
12172
12398
|
clamp = identity$6,
|
12173
|
-
piecewise
|
12399
|
+
piecewise,
|
12174
12400
|
output,
|
12175
12401
|
input;
|
12176
12402
|
|
12177
12403
|
function rescale() {
|
12178
|
-
piecewise
|
12404
|
+
piecewise = Math.min(domain.length, range.length) > 2 ? polymap : bimap;
|
12179
12405
|
output = input = null;
|
12180
12406
|
return scale;
|
12181
12407
|
}
|
12182
12408
|
|
12183
12409
|
function scale(x) {
|
12184
|
-
return isNaN(x = +x) ? unknown : (output || (output = piecewise
|
12410
|
+
return isNaN(x = +x) ? unknown : (output || (output = piecewise(domain.map(transform), range, interpolate)))(transform(clamp(x)));
|
12185
12411
|
}
|
12186
12412
|
|
12187
12413
|
scale.invert = function(y) {
|
12188
|
-
return clamp(untransform((input || (input = piecewise
|
12414
|
+
return clamp(untransform((input || (input = piecewise(range, domain.map(transform), interpolateNumber)))(y)));
|
12189
12415
|
};
|
12190
12416
|
|
12191
12417
|
scale.domain = function(_) {
|
12192
|
-
return arguments.length ? (domain = map$
|
12418
|
+
return arguments.length ? (domain = map$3.call(_, number$2), clamp === identity$6 || (clamp = clamper(domain)), rescale()) : domain.slice();
|
12193
12419
|
};
|
12194
12420
|
|
12195
12421
|
scale.range = function(_) {
|
@@ -12197,7 +12423,7 @@ function transformer$1() {
|
|
12197
12423
|
};
|
12198
12424
|
|
12199
12425
|
scale.rangeRound = function(_) {
|
12200
|
-
return range = slice$5.call(_), interpolate
|
12426
|
+
return range = slice$5.call(_), interpolate = interpolateRound, rescale();
|
12201
12427
|
};
|
12202
12428
|
|
12203
12429
|
scale.clamp = function(_) {
|
@@ -12205,7 +12431,7 @@ function transformer$1() {
|
|
12205
12431
|
};
|
12206
12432
|
|
12207
12433
|
scale.interpolate = function(_) {
|
12208
|
-
return arguments.length ? (interpolate
|
12434
|
+
return arguments.length ? (interpolate = _, rescale()) : interpolate;
|
12209
12435
|
};
|
12210
12436
|
|
12211
12437
|
scale.unknown = function(_) {
|
@@ -12327,7 +12553,7 @@ function identity$7(domain) {
|
|
12327
12553
|
scale.invert = scale;
|
12328
12554
|
|
12329
12555
|
scale.domain = scale.range = function(_) {
|
12330
|
-
return arguments.length ? (domain = map$
|
12556
|
+
return arguments.length ? (domain = map$3.call(_, number$2), scale) : domain.slice();
|
12331
12557
|
};
|
12332
12558
|
|
12333
12559
|
scale.unknown = function(_) {
|
@@ -12338,7 +12564,7 @@ function identity$7(domain) {
|
|
12338
12564
|
return identity$7(domain).unknown(unknown);
|
12339
12565
|
};
|
12340
12566
|
|
12341
|
-
domain = arguments.length ? map$
|
12567
|
+
domain = arguments.length ? map$3.call(domain, number$2) : [0, 1];
|
12342
12568
|
|
12343
12569
|
return linearish(scale);
|
12344
12570
|
}
|
@@ -12581,7 +12807,7 @@ function sqrt$1() {
|
|
12581
12807
|
return pow$1.apply(null, arguments).exponent(0.5);
|
12582
12808
|
}
|
12583
12809
|
|
12584
|
-
function quantile
|
12810
|
+
function quantile() {
|
12585
12811
|
var domain = [],
|
12586
12812
|
range = [],
|
12587
12813
|
thresholds = [],
|
@@ -12627,7 +12853,7 @@ function quantile$$1() {
|
|
12627
12853
|
};
|
12628
12854
|
|
12629
12855
|
scale.copy = function() {
|
12630
|
-
return quantile
|
12856
|
+
return quantile()
|
12631
12857
|
.domain(domain)
|
12632
12858
|
.range(range)
|
12633
12859
|
.unknown(unknown);
|
@@ -12732,10 +12958,12 @@ var t0$1 = new Date,
|
|
12732
12958
|
function newInterval(floori, offseti, count, field) {
|
12733
12959
|
|
12734
12960
|
function interval(date) {
|
12735
|
-
return floori(date = new Date(+date)), date;
|
12961
|
+
return floori(date = arguments.length === 0 ? new Date : new Date(+date)), date;
|
12736
12962
|
}
|
12737
12963
|
|
12738
|
-
interval.floor =
|
12964
|
+
interval.floor = function(date) {
|
12965
|
+
return floori(date = new Date(+date)), date;
|
12966
|
+
};
|
12739
12967
|
|
12740
12968
|
interval.ceil = function(date) {
|
12741
12969
|
return floori(date = new Date(date - 1)), offseti(date, 1), floori(date), date;
|
@@ -13043,8 +13271,8 @@ function utcDate(d) {
|
|
13043
13271
|
return new Date(Date.UTC(d.y, d.m, d.d, d.H, d.M, d.S, d.L));
|
13044
13272
|
}
|
13045
13273
|
|
13046
|
-
function
|
13047
|
-
return {y: y, m:
|
13274
|
+
function newDate(y, m, d) {
|
13275
|
+
return {y: y, m: m, d: d, H: 0, M: 0, S: 0, L: 0};
|
13048
13276
|
}
|
13049
13277
|
|
13050
13278
|
function formatLocale$1(locale) {
|
@@ -13084,6 +13312,7 @@ function formatLocale$1(locale) {
|
|
13084
13312
|
"m": formatMonthNumber,
|
13085
13313
|
"M": formatMinutes,
|
13086
13314
|
"p": formatPeriod,
|
13315
|
+
"q": formatQuarter,
|
13087
13316
|
"Q": formatUnixTimestamp,
|
13088
13317
|
"s": formatUnixTimestampSeconds,
|
13089
13318
|
"S": formatSeconds,
|
@@ -13116,6 +13345,7 @@ function formatLocale$1(locale) {
|
|
13116
13345
|
"m": formatUTCMonthNumber,
|
13117
13346
|
"M": formatUTCMinutes,
|
13118
13347
|
"p": formatUTCPeriod,
|
13348
|
+
"q": formatUTCQuarter,
|
13119
13349
|
"Q": formatUnixTimestamp,
|
13120
13350
|
"s": formatUnixTimestampSeconds,
|
13121
13351
|
"S": formatUTCSeconds,
|
@@ -13148,6 +13378,7 @@ function formatLocale$1(locale) {
|
|
13148
13378
|
"m": parseMonthNumber,
|
13149
13379
|
"M": parseMinutes,
|
13150
13380
|
"p": parsePeriod,
|
13381
|
+
"q": parseQuarter,
|
13151
13382
|
"Q": parseUnixTimestamp,
|
13152
13383
|
"s": parseUnixTimestampSeconds,
|
13153
13384
|
"S": parseSeconds,
|
@@ -13200,33 +13431,40 @@ function formatLocale$1(locale) {
|
|
13200
13431
|
};
|
13201
13432
|
}
|
13202
13433
|
|
13203
|
-
function newParse(specifier,
|
13434
|
+
function newParse(specifier, Z) {
|
13204
13435
|
return function(string) {
|
13205
|
-
var d =
|
13436
|
+
var d = newDate(1900, undefined, 1),
|
13206
13437
|
i = parseSpecifier(d, specifier, string += "", 0),
|
13207
|
-
week, day
|
13438
|
+
week, day$1;
|
13208
13439
|
if (i != string.length) return null;
|
13209
13440
|
|
13210
13441
|
// If a UNIX timestamp is specified, return it.
|
13211
13442
|
if ("Q" in d) return new Date(d.Q);
|
13443
|
+
if ("s" in d) return new Date(d.s * 1000 + ("L" in d ? d.L : 0));
|
13444
|
+
|
13445
|
+
// If this is utcParse, never use the local timezone.
|
13446
|
+
if (Z && !("Z" in d)) d.Z = 0;
|
13212
13447
|
|
13213
13448
|
// The am-pm flag is 0 for AM, and 1 for PM.
|
13214
13449
|
if ("p" in d) d.H = d.H % 12 + d.p * 12;
|
13215
13450
|
|
13451
|
+
// If the month was not specified, inherit from the quarter.
|
13452
|
+
if (d.m === undefined) d.m = "q" in d ? d.q : 0;
|
13453
|
+
|
13216
13454
|
// Convert day-of-week and week-of-year to day-of-year.
|
13217
13455
|
if ("V" in d) {
|
13218
13456
|
if (d.V < 1 || d.V > 53) return null;
|
13219
13457
|
if (!("w" in d)) d.w = 1;
|
13220
13458
|
if ("Z" in d) {
|
13221
|
-
week = utcDate(
|
13222
|
-
week = day
|
13459
|
+
week = utcDate(newDate(d.y, 0, 1)), day$1 = week.getUTCDay();
|
13460
|
+
week = day$1 > 4 || day$1 === 0 ? utcMonday.ceil(week) : utcMonday(week);
|
13223
13461
|
week = utcDay.offset(week, (d.V - 1) * 7);
|
13224
13462
|
d.y = week.getUTCFullYear();
|
13225
13463
|
d.m = week.getUTCMonth();
|
13226
13464
|
d.d = week.getUTCDate() + (d.w + 6) % 7;
|
13227
13465
|
} else {
|
13228
|
-
week = newDate(
|
13229
|
-
week = day
|
13466
|
+
week = localDate(newDate(d.y, 0, 1)), day$1 = week.getDay();
|
13467
|
+
week = day$1 > 4 || day$1 === 0 ? monday.ceil(week) : monday(week);
|
13230
13468
|
week = day.offset(week, (d.V - 1) * 7);
|
13231
13469
|
d.y = week.getFullYear();
|
13232
13470
|
d.m = week.getMonth();
|
@@ -13234,9 +13472,9 @@ function formatLocale$1(locale) {
|
|
13234
13472
|
}
|
13235
13473
|
} else if ("W" in d || "U" in d) {
|
13236
13474
|
if (!("w" in d)) d.w = "u" in d ? d.u % 7 : "W" in d ? 1 : 0;
|
13237
|
-
day
|
13475
|
+
day$1 = "Z" in d ? utcDate(newDate(d.y, 0, 1)).getUTCDay() : localDate(newDate(d.y, 0, 1)).getDay();
|
13238
13476
|
d.m = 0;
|
13239
|
-
d.d = "W" in d ? (d.w + 6) % 7 + d.W * 7 - (day
|
13477
|
+
d.d = "W" in d ? (d.w + 6) % 7 + d.W * 7 - (day$1 + 5) % 7 : d.w + d.U * 7 - (day$1 + 6) % 7;
|
13240
13478
|
}
|
13241
13479
|
|
13242
13480
|
// If a time zone is specified, all fields are interpreted as UTC and then
|
@@ -13248,7 +13486,7 @@ function formatLocale$1(locale) {
|
|
13248
13486
|
}
|
13249
13487
|
|
13250
13488
|
// Otherwise, all fields are in local time.
|
13251
|
-
return
|
13489
|
+
return localDate(d);
|
13252
13490
|
};
|
13253
13491
|
}
|
13254
13492
|
|
@@ -13331,6 +13569,10 @@ function formatLocale$1(locale) {
|
|
13331
13569
|
return locale_periods[+(d.getHours() >= 12)];
|
13332
13570
|
}
|
13333
13571
|
|
13572
|
+
function formatQuarter(d) {
|
13573
|
+
return 1 + ~~(d.getMonth() / 3);
|
13574
|
+
}
|
13575
|
+
|
13334
13576
|
function formatUTCShortWeekday(d) {
|
13335
13577
|
return locale_shortWeekdays[d.getUTCDay()];
|
13336
13578
|
}
|
@@ -13351,6 +13593,10 @@ function formatLocale$1(locale) {
|
|
13351
13593
|
return locale_periods[+(d.getUTCHours() >= 12)];
|
13352
13594
|
}
|
13353
13595
|
|
13596
|
+
function formatUTCQuarter(d) {
|
13597
|
+
return 1 + ~~(d.getUTCMonth() / 3);
|
13598
|
+
}
|
13599
|
+
|
13354
13600
|
return {
|
13355
13601
|
format: function(specifier) {
|
13356
13602
|
var f = newFormat(specifier += "", formats);
|
@@ -13358,7 +13604,7 @@ function formatLocale$1(locale) {
|
|
13358
13604
|
return f;
|
13359
13605
|
},
|
13360
13606
|
parse: function(specifier) {
|
13361
|
-
var p = newParse(specifier += "",
|
13607
|
+
var p = newParse(specifier += "", false);
|
13362
13608
|
p.toString = function() { return specifier; };
|
13363
13609
|
return p;
|
13364
13610
|
},
|
@@ -13368,7 +13614,7 @@ function formatLocale$1(locale) {
|
|
13368
13614
|
return f;
|
13369
13615
|
},
|
13370
13616
|
utcParse: function(specifier) {
|
13371
|
-
var p = newParse(specifier,
|
13617
|
+
var p = newParse(specifier += "", true);
|
13372
13618
|
p.toString = function() { return specifier; };
|
13373
13619
|
return p;
|
13374
13620
|
}
|
@@ -13441,6 +13687,11 @@ function parseZone(d, string, i) {
|
|
13441
13687
|
return n ? (d.Z = n[1] ? 0 : -(n[2] + (n[3] || "00")), i + n[0].length) : -1;
|
13442
13688
|
}
|
13443
13689
|
|
13690
|
+
function parseQuarter(d, string, i) {
|
13691
|
+
var n = numberRe.exec(string.slice(i, i + 1));
|
13692
|
+
return n ? (d.q = n[0] * 3 - 3, i + n[0].length) : -1;
|
13693
|
+
}
|
13694
|
+
|
13444
13695
|
function parseMonthNumber(d, string, i) {
|
13445
13696
|
var n = numberRe.exec(string.slice(i, i + 2));
|
13446
13697
|
return n ? (d.m = n[0] - 1, i + n[0].length) : -1;
|
@@ -13493,7 +13744,7 @@ function parseUnixTimestamp(d, string, i) {
|
|
13493
13744
|
|
13494
13745
|
function parseUnixTimestampSeconds(d, string, i) {
|
13495
13746
|
var n = numberRe.exec(string.slice(i));
|
13496
|
-
return n ? (d.
|
13747
|
+
return n ? (d.s = +n[0], i + n[0].length) : -1;
|
13497
13748
|
}
|
13498
13749
|
|
13499
13750
|
function formatDayOfMonth(d, p) {
|
@@ -13533,17 +13784,17 @@ function formatSeconds(d, p) {
|
|
13533
13784
|
}
|
13534
13785
|
|
13535
13786
|
function formatWeekdayNumberMonday(d) {
|
13536
|
-
var day
|
13537
|
-
return day
|
13787
|
+
var day = d.getDay();
|
13788
|
+
return day === 0 ? 7 : day;
|
13538
13789
|
}
|
13539
13790
|
|
13540
13791
|
function formatWeekNumberSunday(d, p) {
|
13541
|
-
return pad$1(sunday.count(year(d), d), p, 2);
|
13792
|
+
return pad$1(sunday.count(year(d) - 1, d), p, 2);
|
13542
13793
|
}
|
13543
13794
|
|
13544
13795
|
function formatWeekNumberISO(d, p) {
|
13545
|
-
var day
|
13546
|
-
d = (day
|
13796
|
+
var day = d.getDay();
|
13797
|
+
d = (day >= 4 || day === 0) ? thursday(d) : thursday.ceil(d);
|
13547
13798
|
return pad$1(thursday.count(year(d), d) + (year(d).getDay() === 4), p, 2);
|
13548
13799
|
}
|
13549
13800
|
|
@@ -13552,7 +13803,7 @@ function formatWeekdayNumberSunday(d) {
|
|
13552
13803
|
}
|
13553
13804
|
|
13554
13805
|
function formatWeekNumberMonday(d, p) {
|
13555
|
-
return pad$1(monday.count(year(d), d), p, 2);
|
13806
|
+
return pad$1(monday.count(year(d) - 1, d), p, 2);
|
13556
13807
|
}
|
13557
13808
|
|
13558
13809
|
function formatYear$1(d, p) {
|
@@ -13612,12 +13863,12 @@ function formatUTCWeekdayNumberMonday(d) {
|
|
13612
13863
|
}
|
13613
13864
|
|
13614
13865
|
function formatUTCWeekNumberSunday(d, p) {
|
13615
|
-
return pad$1(utcSunday.count(utcYear(d), d), p, 2);
|
13866
|
+
return pad$1(utcSunday.count(utcYear(d) - 1, d), p, 2);
|
13616
13867
|
}
|
13617
13868
|
|
13618
13869
|
function formatUTCWeekNumberISO(d, p) {
|
13619
|
-
var day
|
13620
|
-
d = (day
|
13870
|
+
var day = d.getUTCDay();
|
13871
|
+
d = (day >= 4 || day === 0) ? utcThursday(d) : utcThursday.ceil(d);
|
13621
13872
|
return pad$1(utcThursday.count(utcYear(d), d) + (utcYear(d).getUTCDay() === 4), p, 2);
|
13622
13873
|
}
|
13623
13874
|
|
@@ -13626,7 +13877,7 @@ function formatUTCWeekdayNumberSunday(d) {
|
|
13626
13877
|
}
|
13627
13878
|
|
13628
13879
|
function formatUTCWeekNumberMonday(d, p) {
|
13629
|
-
return pad$1(utcMonday.count(utcYear(d), d), p, 2);
|
13880
|
+
return pad$1(utcMonday.count(utcYear(d) - 1, d), p, 2);
|
13630
13881
|
}
|
13631
13882
|
|
13632
13883
|
function formatUTCYear(d, p) {
|
@@ -13710,7 +13961,7 @@ function number$3(t) {
|
|
13710
13961
|
return t instanceof Date ? +t : +new Date(+t);
|
13711
13962
|
}
|
13712
13963
|
|
13713
|
-
function calendar(year
|
13964
|
+
function calendar(year, month, week, day, hour, minute, second, millisecond, format) {
|
13714
13965
|
var scale = continuous(identity$6, identity$6),
|
13715
13966
|
invert = scale.invert,
|
13716
13967
|
domain = scale.domain;
|
@@ -13725,33 +13976,33 @@ function calendar(year$$1, month$$1, week, day$$1, hour$$1, minute$$1, second$$1
|
|
13725
13976
|
formatYear = format("%Y");
|
13726
13977
|
|
13727
13978
|
var tickIntervals = [
|
13728
|
-
[second
|
13729
|
-
[second
|
13730
|
-
[second
|
13731
|
-
[second
|
13732
|
-
[minute
|
13733
|
-
[minute
|
13734
|
-
[minute
|
13735
|
-
[minute
|
13736
|
-
[ hour
|
13737
|
-
[ hour
|
13738
|
-
[ hour
|
13739
|
-
[ hour
|
13740
|
-
[ day
|
13741
|
-
[ day
|
13979
|
+
[second, 1, durationSecond$1],
|
13980
|
+
[second, 5, 5 * durationSecond$1],
|
13981
|
+
[second, 15, 15 * durationSecond$1],
|
13982
|
+
[second, 30, 30 * durationSecond$1],
|
13983
|
+
[minute, 1, durationMinute$1],
|
13984
|
+
[minute, 5, 5 * durationMinute$1],
|
13985
|
+
[minute, 15, 15 * durationMinute$1],
|
13986
|
+
[minute, 30, 30 * durationMinute$1],
|
13987
|
+
[ hour, 1, durationHour$1 ],
|
13988
|
+
[ hour, 3, 3 * durationHour$1 ],
|
13989
|
+
[ hour, 6, 6 * durationHour$1 ],
|
13990
|
+
[ hour, 12, 12 * durationHour$1 ],
|
13991
|
+
[ day, 1, durationDay$1 ],
|
13992
|
+
[ day, 2, 2 * durationDay$1 ],
|
13742
13993
|
[ week, 1, durationWeek$1 ],
|
13743
|
-
[ month
|
13744
|
-
[ month
|
13745
|
-
[ year
|
13994
|
+
[ month, 1, durationMonth ],
|
13995
|
+
[ month, 3, 3 * durationMonth ],
|
13996
|
+
[ year, 1, durationYear ]
|
13746
13997
|
];
|
13747
13998
|
|
13748
13999
|
function tickFormat(date) {
|
13749
|
-
return (second
|
13750
|
-
: minute
|
13751
|
-
: hour
|
13752
|
-
: day
|
13753
|
-
: month
|
13754
|
-
: year
|
14000
|
+
return (second(date) < date ? formatMillisecond
|
14001
|
+
: minute(date) < date ? formatSecond
|
14002
|
+
: hour(date) < date ? formatMinute
|
14003
|
+
: day(date) < date ? formatHour
|
14004
|
+
: month(date) < date ? (week(date) < date ? formatDay : formatWeek)
|
14005
|
+
: year(date) < date ? formatMonth
|
13755
14006
|
: formatYear)(date);
|
13756
14007
|
}
|
13757
14008
|
|
@@ -13766,14 +14017,14 @@ function calendar(year$$1, month$$1, week, day$$1, hour$$1, minute$$1, second$$1
|
|
13766
14017
|
i = bisector(function(i) { return i[2]; }).right(tickIntervals, target);
|
13767
14018
|
if (i === tickIntervals.length) {
|
13768
14019
|
step = tickStep(start / durationYear, stop / durationYear, interval);
|
13769
|
-
interval = year
|
14020
|
+
interval = year;
|
13770
14021
|
} else if (i) {
|
13771
14022
|
i = tickIntervals[target / tickIntervals[i - 1][2] < tickIntervals[i][2] / target ? i - 1 : i];
|
13772
14023
|
step = i[1];
|
13773
14024
|
interval = i[0];
|
13774
14025
|
} else {
|
13775
14026
|
step = Math.max(tickStep(start, stop, interval), 1);
|
13776
|
-
interval = millisecond
|
14027
|
+
interval = millisecond;
|
13777
14028
|
}
|
13778
14029
|
}
|
13779
14030
|
|
@@ -13785,7 +14036,7 @@ function calendar(year$$1, month$$1, week, day$$1, hour$$1, minute$$1, second$$1
|
|
13785
14036
|
};
|
13786
14037
|
|
13787
14038
|
scale.domain = function(_) {
|
13788
|
-
return arguments.length ? domain(map$
|
14039
|
+
return arguments.length ? domain(map$3.call(_, number$3)) : domain().map(date$1);
|
13789
14040
|
};
|
13790
14041
|
|
13791
14042
|
scale.ticks = function(interval, step) {
|
@@ -13812,7 +14063,7 @@ function calendar(year$$1, month$$1, week, day$$1, hour$$1, minute$$1, second$$1
|
|
13812
14063
|
};
|
13813
14064
|
|
13814
14065
|
scale.copy = function() {
|
13815
|
-
return copy(scale, calendar(year
|
14066
|
+
return copy(scale, calendar(year, month, week, day, hour, minute, second, millisecond, format));
|
13816
14067
|
};
|
13817
14068
|
|
13818
14069
|
return scale;
|
@@ -14050,6 +14301,8 @@ var Set2 = colors("66c2a5fc8d628da0cbe78ac3a6d854ffd92fe5c494b3b3b3");
|
|
14050
14301
|
|
14051
14302
|
var Set3 = colors("8dd3c7ffffb3bebadafb807280b1d3fdb462b3de69fccde5d9d9d9bc80bdccebc5ffed6f");
|
14052
14303
|
|
14304
|
+
var Tableau10 = colors("4e79a7f28e2ce1575976b7b259a14fedc949af7aa1ff9da79c755fbab0ab");
|
14305
|
+
|
14053
14306
|
function ramp(scheme) {
|
14054
14307
|
return rgbBasis(scheme[scheme.length - 1]);
|
14055
14308
|
}
|
@@ -14396,6 +14649,15 @@ var scheme$q = new Array(3).concat(
|
|
14396
14649
|
|
14397
14650
|
var Oranges = ramp(scheme$q);
|
14398
14651
|
|
14652
|
+
function cividis(t) {
|
14653
|
+
t = Math.max(0, Math.min(1, t));
|
14654
|
+
return "rgb("
|
14655
|
+
+ Math.max(0, Math.min(255, Math.round(-4.54 - t * (35.34 - t * (2381.73 - t * (6402.7 - t * (7024.72 - t * 2710.57))))))) + ", "
|
14656
|
+
+ Math.max(0, Math.min(255, Math.round(32.49 + t * (170.73 + t * (52.82 - t * (131.46 - t * (176.58 - t * 67.37))))))) + ", "
|
14657
|
+
+ Math.max(0, Math.min(255, Math.round(81.24 + t * (442.36 - t * (2482.43 - t * (6167.24 - t * (6614.94 - t * 2475.67)))))))
|
14658
|
+
+ ")";
|
14659
|
+
}
|
14660
|
+
|
14399
14661
|
var cubehelix$3 = cubehelixLong(cubehelix(300, 0.5, 0.0), cubehelix(-240, 0.5, 1.0));
|
14400
14662
|
|
14401
14663
|
var warm = cubehelixLong(cubehelix(-100, 0.75, 0.35), cubehelix(80, 1.50, 0.8));
|
@@ -14426,6 +14688,15 @@ function sinebow(t) {
|
|
14426
14688
|
return c$1 + "";
|
14427
14689
|
}
|
14428
14690
|
|
14691
|
+
function turbo(t) {
|
14692
|
+
t = Math.max(0, Math.min(1, t));
|
14693
|
+
return "rgb("
|
14694
|
+
+ Math.max(0, Math.min(255, Math.round(34.61 + t * (1172.33 - t * (10793.56 - t * (33300.12 - t * (38394.49 - t * 14825.05))))))) + ", "
|
14695
|
+
+ Math.max(0, Math.min(255, Math.round(23.31 + t * (557.33 + t * (1225.33 - t * (3574.96 - t * (1073.77 + t * 707.56))))))) + ", "
|
14696
|
+
+ Math.max(0, Math.min(255, Math.round(27.2 + t * (3211.1 - t * (15327.97 - t * (27814 - t * (22569.18 - t * 6838.66)))))))
|
14697
|
+
+ ")";
|
14698
|
+
}
|
14699
|
+
|
14429
14700
|
function ramp$1(range) {
|
14430
14701
|
var n = range.length;
|
14431
14702
|
return function(t) {
|
@@ -14767,8 +15038,8 @@ function y$3(p) {
|
|
14767
15038
|
}
|
14768
15039
|
|
14769
15040
|
function line() {
|
14770
|
-
var x
|
14771
|
-
y
|
15041
|
+
var x = x$3,
|
15042
|
+
y = y$3,
|
14772
15043
|
defined = constant$b(true),
|
14773
15044
|
context = null,
|
14774
15045
|
curve = curveLinear,
|
@@ -14788,18 +15059,18 @@ function line() {
|
|
14788
15059
|
if (defined0 = !defined0) output.lineStart();
|
14789
15060
|
else output.lineEnd();
|
14790
15061
|
}
|
14791
|
-
if (defined0) output.point(+x
|
15062
|
+
if (defined0) output.point(+x(d, i, data), +y(d, i, data));
|
14792
15063
|
}
|
14793
15064
|
|
14794
15065
|
if (buffer) return output = null, buffer + "" || null;
|
14795
15066
|
}
|
14796
15067
|
|
14797
15068
|
line.x = function(_) {
|
14798
|
-
return arguments.length ? (x
|
15069
|
+
return arguments.length ? (x = typeof _ === "function" ? _ : constant$b(+_), line) : x;
|
14799
15070
|
};
|
14800
15071
|
|
14801
15072
|
line.y = function(_) {
|
14802
|
-
return arguments.length ? (y
|
15073
|
+
return arguments.length ? (y = typeof _ === "function" ? _ : constant$b(+_), line) : y;
|
14803
15074
|
};
|
14804
15075
|
|
14805
15076
|
line.defined = function(_) {
|
@@ -15099,14 +15370,14 @@ function linkTarget(d) {
|
|
15099
15370
|
function link$2(curve) {
|
15100
15371
|
var source = linkSource,
|
15101
15372
|
target = linkTarget,
|
15102
|
-
x
|
15103
|
-
y
|
15373
|
+
x = x$3,
|
15374
|
+
y = y$3,
|
15104
15375
|
context = null;
|
15105
15376
|
|
15106
15377
|
function link() {
|
15107
15378
|
var buffer, argv = slice$6.call(arguments), s = source.apply(this, argv), t = target.apply(this, argv);
|
15108
15379
|
if (!context) context = buffer = path();
|
15109
|
-
curve(context, +x
|
15380
|
+
curve(context, +x.apply(this, (argv[0] = s, argv)), +y.apply(this, argv), +x.apply(this, (argv[0] = t, argv)), +y.apply(this, argv));
|
15110
15381
|
if (buffer) return context = null, buffer + "" || null;
|
15111
15382
|
}
|
15112
15383
|
|
@@ -15119,11 +15390,11 @@ function link$2(curve) {
|
|
15119
15390
|
};
|
15120
15391
|
|
15121
15392
|
link.x = function(_) {
|
15122
|
-
return arguments.length ? (x
|
15393
|
+
return arguments.length ? (x = typeof _ === "function" ? _ : constant$b(+_), link) : x;
|
15123
15394
|
};
|
15124
15395
|
|
15125
15396
|
link.y = function(_) {
|
15126
|
-
return arguments.length ? (y
|
15397
|
+
return arguments.length ? (y = typeof _ === "function" ? _ : constant$b(+_), link) : y;
|
15127
15398
|
};
|
15128
15399
|
|
15129
15400
|
link.context = function(_) {
|
@@ -15623,15 +15894,15 @@ CardinalClosed.prototype = {
|
|
15623
15894
|
|
15624
15895
|
var cardinalClosed = (function custom(tension) {
|
15625
15896
|
|
15626
|
-
function cardinal
|
15897
|
+
function cardinal(context) {
|
15627
15898
|
return new CardinalClosed(context, tension);
|
15628
15899
|
}
|
15629
15900
|
|
15630
|
-
cardinal
|
15901
|
+
cardinal.tension = function(tension) {
|
15631
15902
|
return custom(+tension);
|
15632
15903
|
};
|
15633
15904
|
|
15634
|
-
return cardinal
|
15905
|
+
return cardinal;
|
15635
15906
|
})(0);
|
15636
15907
|
|
15637
15908
|
function CardinalOpen(context, tension) {
|
@@ -15671,15 +15942,15 @@ CardinalOpen.prototype = {
|
|
15671
15942
|
|
15672
15943
|
var cardinalOpen = (function custom(tension) {
|
15673
15944
|
|
15674
|
-
function cardinal
|
15945
|
+
function cardinal(context) {
|
15675
15946
|
return new CardinalOpen(context, tension);
|
15676
15947
|
}
|
15677
15948
|
|
15678
|
-
cardinal
|
15949
|
+
cardinal.tension = function(tension) {
|
15679
15950
|
return custom(+tension);
|
15680
15951
|
};
|
15681
15952
|
|
15682
|
-
return cardinal
|
15953
|
+
return cardinal;
|
15683
15954
|
})(0);
|
15684
15955
|
|
15685
15956
|
function point$4(that, x, y) {
|
@@ -15828,15 +16099,15 @@ CatmullRomClosed.prototype = {
|
|
15828
16099
|
|
15829
16100
|
var catmullRomClosed = (function custom(alpha) {
|
15830
16101
|
|
15831
|
-
function catmullRom
|
16102
|
+
function catmullRom(context) {
|
15832
16103
|
return alpha ? new CatmullRomClosed(context, alpha) : new CardinalClosed(context, 0);
|
15833
16104
|
}
|
15834
16105
|
|
15835
|
-
catmullRom
|
16106
|
+
catmullRom.alpha = function(alpha) {
|
15836
16107
|
return custom(+alpha);
|
15837
16108
|
};
|
15838
16109
|
|
15839
|
-
return catmullRom
|
16110
|
+
return catmullRom;
|
15840
16111
|
})(0.5);
|
15841
16112
|
|
15842
16113
|
function CatmullRomOpen(context, alpha) {
|
@@ -15888,15 +16159,15 @@ CatmullRomOpen.prototype = {
|
|
15888
16159
|
|
15889
16160
|
var catmullRomOpen = (function custom(alpha) {
|
15890
16161
|
|
15891
|
-
function catmullRom
|
16162
|
+
function catmullRom(context) {
|
15892
16163
|
return alpha ? new CatmullRomOpen(context, alpha) : new CardinalOpen(context, 0);
|
15893
16164
|
}
|
15894
16165
|
|
15895
|
-
catmullRom
|
16166
|
+
catmullRom.alpha = function(alpha) {
|
15896
16167
|
return custom(+alpha);
|
15897
16168
|
};
|
15898
16169
|
|
15899
|
-
return catmullRom
|
16170
|
+
return catmullRom;
|
15900
16171
|
})(0.5);
|
15901
16172
|
|
15902
16173
|
function LinearClosed(context) {
|
@@ -16227,15 +16498,15 @@ function expand(series, order) {
|
|
16227
16498
|
}
|
16228
16499
|
|
16229
16500
|
function diverging$1(series, order) {
|
16230
|
-
if (!((n = series.length) >
|
16501
|
+
if (!((n = series.length) > 0)) return;
|
16231
16502
|
for (var i, j = 0, d, dy, yp, yn, n, m = series[order[0]].length; j < m; ++j) {
|
16232
16503
|
for (yp = yn = 0, i = 0; i < n; ++i) {
|
16233
|
-
if ((dy = (d = series[order[i]][j])[1] - d[0])
|
16504
|
+
if ((dy = (d = series[order[i]][j])[1] - d[0]) > 0) {
|
16234
16505
|
d[0] = yp, d[1] = yp += dy;
|
16235
16506
|
} else if (dy < 0) {
|
16236
16507
|
d[1] = yn, d[0] = yn += dy;
|
16237
16508
|
} else {
|
16238
|
-
d[0] =
|
16509
|
+
d[0] = 0, d[1] = dy;
|
16239
16510
|
}
|
16240
16511
|
}
|
16241
16512
|
}
|
@@ -17271,13 +17542,13 @@ Diagram.prototype = {
|
|
17271
17542
|
};
|
17272
17543
|
|
17273
17544
|
function voronoi() {
|
17274
|
-
var x
|
17275
|
-
y
|
17545
|
+
var x = x$4,
|
17546
|
+
y = y$4,
|
17276
17547
|
extent = null;
|
17277
17548
|
|
17278
17549
|
function voronoi(data) {
|
17279
17550
|
return new Diagram(data.map(function(d, i) {
|
17280
|
-
var s = [Math.round(x
|
17551
|
+
var s = [Math.round(x(d, i, data) / epsilon$4) * epsilon$4, Math.round(y(d, i, data) / epsilon$4) * epsilon$4];
|
17281
17552
|
s.index = i;
|
17282
17553
|
s.data = d;
|
17283
17554
|
return s;
|
@@ -17297,11 +17568,11 @@ function voronoi() {
|
|
17297
17568
|
};
|
17298
17569
|
|
17299
17570
|
voronoi.x = function(_) {
|
17300
|
-
return arguments.length ? (x
|
17571
|
+
return arguments.length ? (x = typeof _ === "function" ? _ : constant$c(+_), voronoi) : x;
|
17301
17572
|
};
|
17302
17573
|
|
17303
17574
|
voronoi.y = function(_) {
|
17304
|
-
return arguments.length ? (y
|
17575
|
+
return arguments.length ? (y = typeof _ === "function" ? _ : constant$c(+_), voronoi) : y;
|
17305
17576
|
};
|
17306
17577
|
|
17307
17578
|
voronoi.extent = function(_) {
|
@@ -17375,7 +17646,8 @@ var identity$9 = new Transform(1, 0, 0);
|
|
17375
17646
|
transform$1.prototype = Transform.prototype;
|
17376
17647
|
|
17377
17648
|
function transform$1(node) {
|
17378
|
-
|
17649
|
+
while (!node.__zoom) if (!(node = node.parentNode)) return identity$9;
|
17650
|
+
return node.__zoom;
|
17379
17651
|
}
|
17380
17652
|
|
17381
17653
|
function nopropagation$2() {
|
@@ -17389,20 +17661,20 @@ function noevent$2() {
|
|
17389
17661
|
|
17390
17662
|
// Ignore right-click, since that should open the context menu.
|
17391
17663
|
function defaultFilter$2() {
|
17392
|
-
return !exports.event.button;
|
17664
|
+
return !exports.event.ctrlKey && !exports.event.button;
|
17393
17665
|
}
|
17394
17666
|
|
17395
17667
|
function defaultExtent$1() {
|
17396
|
-
var e = this
|
17668
|
+
var e = this;
|
17397
17669
|
if (e instanceof SVGElement) {
|
17398
17670
|
e = e.ownerSVGElement || e;
|
17399
|
-
|
17400
|
-
|
17401
|
-
|
17402
|
-
|
17403
|
-
|
17671
|
+
if (e.hasAttribute("viewBox")) {
|
17672
|
+
e = e.viewBox.baseVal;
|
17673
|
+
return [[e.x, e.y], [e.x + e.width, e.y + e.height]];
|
17674
|
+
}
|
17675
|
+
return [[0, 0], [e.width.baseVal.value, e.height.baseVal.value]];
|
17404
17676
|
}
|
17405
|
-
return [[0, 0], [
|
17677
|
+
return [[0, 0], [e.clientWidth, e.clientHeight]];
|
17406
17678
|
}
|
17407
17679
|
|
17408
17680
|
function defaultTransform() {
|
@@ -17410,11 +17682,11 @@ function defaultTransform() {
|
|
17410
17682
|
}
|
17411
17683
|
|
17412
17684
|
function defaultWheelDelta() {
|
17413
|
-
return -exports.event.deltaY * (exports.event.deltaMode ?
|
17685
|
+
return -exports.event.deltaY * (exports.event.deltaMode === 1 ? 0.05 : exports.event.deltaMode ? 1 : 0.002);
|
17414
17686
|
}
|
17415
17687
|
|
17416
|
-
function defaultTouchable$
|
17417
|
-
return "ontouchstart" in this;
|
17688
|
+
function defaultTouchable$2() {
|
17689
|
+
return navigator.maxTouchPoints || ("ontouchstart" in this);
|
17418
17690
|
}
|
17419
17691
|
|
17420
17692
|
function defaultConstrain(transform, extent, translateExtent) {
|
@@ -17433,12 +17705,11 @@ function zoom() {
|
|
17433
17705
|
extent = defaultExtent$1,
|
17434
17706
|
constrain = defaultConstrain,
|
17435
17707
|
wheelDelta = defaultWheelDelta,
|
17436
|
-
touchable = defaultTouchable$
|
17708
|
+
touchable = defaultTouchable$2,
|
17437
17709
|
scaleExtent = [0, Infinity],
|
17438
17710
|
translateExtent = [[-Infinity, -Infinity], [Infinity, Infinity]],
|
17439
17711
|
duration = 250,
|
17440
17712
|
interpolate = interpolateZoom,
|
17441
|
-
gestures = [],
|
17442
17713
|
listeners = dispatch("start", "zoom", "end"),
|
17443
17714
|
touchstarting,
|
17444
17715
|
touchending,
|
@@ -17446,8 +17717,8 @@ function zoom() {
|
|
17446
17717
|
wheelDelay = 150,
|
17447
17718
|
clickDistance2 = 0;
|
17448
17719
|
|
17449
|
-
function zoom(selection
|
17450
|
-
selection
|
17720
|
+
function zoom(selection) {
|
17721
|
+
selection
|
17451
17722
|
.property("__zoom", defaultTransform)
|
17452
17723
|
.on("wheel.zoom", wheeled)
|
17453
17724
|
.on("mousedown.zoom", mousedowned)
|
@@ -17460,13 +17731,13 @@ function zoom() {
|
|
17460
17731
|
.style("-webkit-tap-highlight-color", "rgba(0,0,0,0)");
|
17461
17732
|
}
|
17462
17733
|
|
17463
|
-
zoom.transform = function(collection, transform) {
|
17464
|
-
var selection
|
17465
|
-
selection
|
17466
|
-
if (collection !== selection
|
17467
|
-
schedule(collection, transform);
|
17734
|
+
zoom.transform = function(collection, transform, point) {
|
17735
|
+
var selection = collection.selection ? collection.selection() : collection;
|
17736
|
+
selection.property("__zoom", defaultTransform);
|
17737
|
+
if (collection !== selection) {
|
17738
|
+
schedule(collection, transform, point);
|
17468
17739
|
} else {
|
17469
|
-
selection
|
17740
|
+
selection.interrupt().each(function() {
|
17470
17741
|
gesture(this, arguments)
|
17471
17742
|
.start()
|
17472
17743
|
.zoom(null, typeof transform === "function" ? transform.apply(this, arguments) : transform)
|
@@ -17475,27 +17746,27 @@ function zoom() {
|
|
17475
17746
|
}
|
17476
17747
|
};
|
17477
17748
|
|
17478
|
-
zoom.scaleBy = function(selection
|
17479
|
-
zoom.scaleTo(selection
|
17749
|
+
zoom.scaleBy = function(selection, k, p) {
|
17750
|
+
zoom.scaleTo(selection, function() {
|
17480
17751
|
var k0 = this.__zoom.k,
|
17481
17752
|
k1 = typeof k === "function" ? k.apply(this, arguments) : k;
|
17482
17753
|
return k0 * k1;
|
17483
|
-
});
|
17754
|
+
}, p);
|
17484
17755
|
};
|
17485
17756
|
|
17486
|
-
zoom.scaleTo = function(selection
|
17487
|
-
zoom.transform(selection
|
17757
|
+
zoom.scaleTo = function(selection, k, p) {
|
17758
|
+
zoom.transform(selection, function() {
|
17488
17759
|
var e = extent.apply(this, arguments),
|
17489
17760
|
t0 = this.__zoom,
|
17490
|
-
p0 = centroid(e),
|
17761
|
+
p0 = p == null ? centroid(e) : typeof p === "function" ? p.apply(this, arguments) : p,
|
17491
17762
|
p1 = t0.invert(p0),
|
17492
17763
|
k1 = typeof k === "function" ? k.apply(this, arguments) : k;
|
17493
17764
|
return constrain(translate(scale(t0, k1), p0, p1), e, translateExtent);
|
17494
|
-
});
|
17765
|
+
}, p);
|
17495
17766
|
};
|
17496
17767
|
|
17497
|
-
zoom.translateBy = function(selection
|
17498
|
-
zoom.transform(selection
|
17768
|
+
zoom.translateBy = function(selection, x, y) {
|
17769
|
+
zoom.transform(selection, function() {
|
17499
17770
|
return constrain(this.__zoom.translate(
|
17500
17771
|
typeof x === "function" ? x.apply(this, arguments) : x,
|
17501
17772
|
typeof y === "function" ? y.apply(this, arguments) : y
|
@@ -17503,16 +17774,16 @@ function zoom() {
|
|
17503
17774
|
});
|
17504
17775
|
};
|
17505
17776
|
|
17506
|
-
zoom.translateTo = function(selection
|
17507
|
-
zoom.transform(selection
|
17777
|
+
zoom.translateTo = function(selection, x, y, p) {
|
17778
|
+
zoom.transform(selection, function() {
|
17508
17779
|
var e = extent.apply(this, arguments),
|
17509
17780
|
t = this.__zoom,
|
17510
|
-
|
17511
|
-
return constrain(identity$9.translate(
|
17781
|
+
p0 = p == null ? centroid(e) : typeof p === "function" ? p.apply(this, arguments) : p;
|
17782
|
+
return constrain(identity$9.translate(p0[0], p0[1]).scale(t.k).translate(
|
17512
17783
|
typeof x === "function" ? -x.apply(this, arguments) : -x,
|
17513
17784
|
typeof y === "function" ? -y.apply(this, arguments) : -y
|
17514
17785
|
), e, translateExtent);
|
17515
|
-
});
|
17786
|
+
}, p);
|
17516
17787
|
};
|
17517
17788
|
|
17518
17789
|
function scale(transform, k) {
|
@@ -17529,8 +17800,8 @@ function zoom() {
|
|
17529
17800
|
return [(+extent[0][0] + +extent[1][0]) / 2, (+extent[0][1] + +extent[1][1]) / 2];
|
17530
17801
|
}
|
17531
17802
|
|
17532
|
-
function schedule(transition
|
17533
|
-
transition
|
17803
|
+
function schedule(transition, transform, point) {
|
17804
|
+
transition
|
17534
17805
|
.on("start.zoom", function() { gesture(this, arguments).start(); })
|
17535
17806
|
.on("interrupt.zoom end.zoom", function() { gesture(this, arguments).end(); })
|
17536
17807
|
.tween("zoom", function() {
|
@@ -17538,7 +17809,7 @@ function zoom() {
|
|
17538
17809
|
args = arguments,
|
17539
17810
|
g = gesture(that, args),
|
17540
17811
|
e = extent.apply(that, args),
|
17541
|
-
p =
|
17812
|
+
p = point == null ? centroid(e) : typeof point === "function" ? point.apply(that, args) : point,
|
17542
17813
|
w = Math.max(e[1][0] - e[0][0], e[1][1] - e[0][1]),
|
17543
17814
|
a = that.__zoom,
|
17544
17815
|
b = typeof transform === "function" ? transform.apply(that, args) : transform,
|
@@ -17551,27 +17822,22 @@ function zoom() {
|
|
17551
17822
|
});
|
17552
17823
|
}
|
17553
17824
|
|
17554
|
-
function gesture(that, args) {
|
17555
|
-
|
17556
|
-
if ((g = gestures[i]).that === that) {
|
17557
|
-
return g;
|
17558
|
-
}
|
17559
|
-
}
|
17560
|
-
return new Gesture(that, args);
|
17825
|
+
function gesture(that, args, clean) {
|
17826
|
+
return (!clean && that.__zooming) || new Gesture(that, args);
|
17561
17827
|
}
|
17562
17828
|
|
17563
17829
|
function Gesture(that, args) {
|
17564
17830
|
this.that = that;
|
17565
17831
|
this.args = args;
|
17566
|
-
this.index = -1;
|
17567
17832
|
this.active = 0;
|
17568
17833
|
this.extent = extent.apply(that, args);
|
17834
|
+
this.taps = 0;
|
17569
17835
|
}
|
17570
17836
|
|
17571
17837
|
Gesture.prototype = {
|
17572
17838
|
start: function() {
|
17573
17839
|
if (++this.active === 1) {
|
17574
|
-
this.
|
17840
|
+
this.that.__zooming = this;
|
17575
17841
|
this.emit("start");
|
17576
17842
|
}
|
17577
17843
|
return this;
|
@@ -17586,8 +17852,7 @@ function zoom() {
|
|
17586
17852
|
},
|
17587
17853
|
end: function() {
|
17588
17854
|
if (--this.active === 0) {
|
17589
|
-
|
17590
|
-
this.index = -1;
|
17855
|
+
delete this.that.__zooming;
|
17591
17856
|
this.emit("end");
|
17592
17857
|
}
|
17593
17858
|
return this;
|
@@ -17635,7 +17900,7 @@ function zoom() {
|
|
17635
17900
|
|
17636
17901
|
function mousedowned() {
|
17637
17902
|
if (touchending || !filter.apply(this, arguments)) return;
|
17638
|
-
var g = gesture(this, arguments),
|
17903
|
+
var g = gesture(this, arguments, true),
|
17639
17904
|
v = select(exports.event.view).on("mousemove.zoom", mousemoved, true).on("mouseup.zoom", mouseupped, true),
|
17640
17905
|
p = mouse(this),
|
17641
17906
|
x0 = exports.event.clientX,
|
@@ -17679,46 +17944,39 @@ function zoom() {
|
|
17679
17944
|
|
17680
17945
|
function touchstarted() {
|
17681
17946
|
if (!filter.apply(this, arguments)) return;
|
17682
|
-
var
|
17683
|
-
|
17684
|
-
|
17685
|
-
|
17947
|
+
var touches = exports.event.touches,
|
17948
|
+
n = touches.length,
|
17949
|
+
g = gesture(this, arguments, exports.event.changedTouches.length === n),
|
17950
|
+
started, i, t, p;
|
17686
17951
|
|
17687
17952
|
nopropagation$2();
|
17688
17953
|
for (i = 0; i < n; ++i) {
|
17689
|
-
t = touches
|
17954
|
+
t = touches[i], p = touch(this, touches, t.identifier);
|
17690
17955
|
p = [p, this.__zoom.invert(p), t.identifier];
|
17691
|
-
if (!g.touch0) g.touch0 = p, started = true;
|
17692
|
-
else if (!g.touch1) g.touch1 = p;
|
17956
|
+
if (!g.touch0) g.touch0 = p, started = true, g.taps = 1 + !!touchstarting;
|
17957
|
+
else if (!g.touch1 && g.touch0[2] !== p[2]) g.touch1 = p, g.taps = 0;
|
17693
17958
|
}
|
17694
17959
|
|
17695
|
-
|
17696
|
-
if (touchstarting) {
|
17697
|
-
touchstarting = clearTimeout(touchstarting);
|
17698
|
-
if (!g.touch1) {
|
17699
|
-
g.end();
|
17700
|
-
p = select(this).on("dblclick.zoom");
|
17701
|
-
if (p) p.apply(this, arguments);
|
17702
|
-
return;
|
17703
|
-
}
|
17704
|
-
}
|
17960
|
+
if (touchstarting) touchstarting = clearTimeout(touchstarting);
|
17705
17961
|
|
17706
17962
|
if (started) {
|
17707
|
-
touchstarting = setTimeout(function() { touchstarting = null; }, touchDelay);
|
17963
|
+
if (g.taps < 2) touchstarting = setTimeout(function() { touchstarting = null; }, touchDelay);
|
17708
17964
|
interrupt(this);
|
17709
17965
|
g.start();
|
17710
17966
|
}
|
17711
17967
|
}
|
17712
17968
|
|
17713
17969
|
function touchmoved() {
|
17970
|
+
if (!this.__zooming) return;
|
17714
17971
|
var g = gesture(this, arguments),
|
17715
|
-
touches
|
17716
|
-
n = touches
|
17972
|
+
touches = exports.event.changedTouches,
|
17973
|
+
n = touches.length, i, t, p, l;
|
17717
17974
|
|
17718
17975
|
noevent$2();
|
17719
17976
|
if (touchstarting) touchstarting = clearTimeout(touchstarting);
|
17977
|
+
g.taps = 0;
|
17720
17978
|
for (i = 0; i < n; ++i) {
|
17721
|
-
t = touches
|
17979
|
+
t = touches[i], p = touch(this, touches, t.identifier);
|
17722
17980
|
if (g.touch0 && g.touch0[2] === t.identifier) g.touch0[0] = p;
|
17723
17981
|
else if (g.touch1 && g.touch1[2] === t.identifier) g.touch1[0] = p;
|
17724
17982
|
}
|
@@ -17738,21 +17996,29 @@ function zoom() {
|
|
17738
17996
|
}
|
17739
17997
|
|
17740
17998
|
function touchended() {
|
17999
|
+
if (!this.__zooming) return;
|
17741
18000
|
var g = gesture(this, arguments),
|
17742
|
-
touches
|
17743
|
-
n = touches
|
18001
|
+
touches = exports.event.changedTouches,
|
18002
|
+
n = touches.length, i, t;
|
17744
18003
|
|
17745
18004
|
nopropagation$2();
|
17746
18005
|
if (touchending) clearTimeout(touchending);
|
17747
18006
|
touchending = setTimeout(function() { touchending = null; }, touchDelay);
|
17748
18007
|
for (i = 0; i < n; ++i) {
|
17749
|
-
t = touches
|
18008
|
+
t = touches[i];
|
17750
18009
|
if (g.touch0 && g.touch0[2] === t.identifier) delete g.touch0;
|
17751
18010
|
else if (g.touch1 && g.touch1[2] === t.identifier) delete g.touch1;
|
17752
18011
|
}
|
17753
18012
|
if (g.touch1 && !g.touch0) g.touch0 = g.touch1, delete g.touch1;
|
17754
18013
|
if (g.touch0) g.touch0[1] = this.__zoom.invert(g.touch0[0]);
|
17755
|
-
else
|
18014
|
+
else {
|
18015
|
+
g.end();
|
18016
|
+
// If this was a dbltap, reroute to the (optional) dblclick.zoom handler.
|
18017
|
+
if (g.taps === 2) {
|
18018
|
+
var p = select(this).on("dblclick.zoom");
|
18019
|
+
if (p) p.apply(this, arguments);
|
18020
|
+
}
|
18021
|
+
}
|
17756
18022
|
}
|
17757
18023
|
|
17758
18024
|
zoom.wheelDelta = function(_) {
|
@@ -17803,128 +18069,111 @@ function zoom() {
|
|
17803
18069
|
return zoom;
|
17804
18070
|
}
|
17805
18071
|
|
17806
|
-
exports.
|
17807
|
-
exports.
|
17808
|
-
exports.
|
17809
|
-
exports.
|
18072
|
+
exports.FormatSpecifier = FormatSpecifier;
|
18073
|
+
exports.active = active;
|
18074
|
+
exports.arc = arc;
|
18075
|
+
exports.area = area$3;
|
18076
|
+
exports.areaRadial = areaRadial;
|
17810
18077
|
exports.ascending = ascending;
|
17811
|
-
exports.
|
17812
|
-
exports.cross = cross;
|
17813
|
-
exports.descending = descending;
|
17814
|
-
exports.deviation = deviation;
|
17815
|
-
exports.extent = extent;
|
17816
|
-
exports.histogram = histogram;
|
17817
|
-
exports.thresholdFreedmanDiaconis = freedmanDiaconis;
|
17818
|
-
exports.thresholdScott = scott;
|
17819
|
-
exports.thresholdSturges = thresholdSturges;
|
17820
|
-
exports.max = max;
|
17821
|
-
exports.mean = mean;
|
17822
|
-
exports.median = median;
|
17823
|
-
exports.merge = merge;
|
17824
|
-
exports.min = min;
|
17825
|
-
exports.pairs = pairs;
|
17826
|
-
exports.permute = permute;
|
17827
|
-
exports.quantile = threshold;
|
17828
|
-
exports.range = sequence;
|
17829
|
-
exports.scan = scan;
|
17830
|
-
exports.shuffle = shuffle;
|
17831
|
-
exports.sum = sum;
|
17832
|
-
exports.ticks = ticks;
|
17833
|
-
exports.tickIncrement = tickIncrement;
|
17834
|
-
exports.tickStep = tickStep;
|
17835
|
-
exports.transpose = transpose;
|
17836
|
-
exports.variance = variance;
|
17837
|
-
exports.zip = zip;
|
17838
|
-
exports.axisTop = axisTop;
|
17839
|
-
exports.axisRight = axisRight;
|
18078
|
+
exports.autoType = autoType;
|
17840
18079
|
exports.axisBottom = axisBottom;
|
17841
18080
|
exports.axisLeft = axisLeft;
|
18081
|
+
exports.axisRight = axisRight;
|
18082
|
+
exports.axisTop = axisTop;
|
18083
|
+
exports.bisect = bisectRight;
|
18084
|
+
exports.bisectLeft = bisectLeft;
|
18085
|
+
exports.bisectRight = bisectRight;
|
18086
|
+
exports.bisector = bisector;
|
18087
|
+
exports.blob = blob;
|
17842
18088
|
exports.brush = brush;
|
18089
|
+
exports.brushSelection = brushSelection;
|
17843
18090
|
exports.brushX = brushX;
|
17844
18091
|
exports.brushY = brushY;
|
17845
|
-
exports.
|
18092
|
+
exports.buffer = buffer;
|
17846
18093
|
exports.chord = chord;
|
17847
|
-
exports.
|
17848
|
-
exports.
|
17849
|
-
exports.set = set$2;
|
17850
|
-
exports.map = map$1;
|
17851
|
-
exports.keys = keys;
|
17852
|
-
exports.values = values;
|
17853
|
-
exports.entries = entries;
|
18094
|
+
exports.clientPoint = point;
|
18095
|
+
exports.cluster = cluster;
|
17854
18096
|
exports.color = color;
|
17855
|
-
exports.rgb = rgb;
|
17856
|
-
exports.hsl = hsl;
|
17857
|
-
exports.lab = lab;
|
17858
|
-
exports.hcl = hcl;
|
17859
|
-
exports.lch = lch;
|
17860
|
-
exports.gray = gray;
|
17861
|
-
exports.cubehelix = cubehelix;
|
17862
|
-
exports.contours = contours;
|
17863
18097
|
exports.contourDensity = density;
|
18098
|
+
exports.contours = contours;
|
18099
|
+
exports.create = create;
|
18100
|
+
exports.creator = creator;
|
18101
|
+
exports.cross = cross;
|
18102
|
+
exports.csv = csv$1;
|
18103
|
+
exports.csvFormat = csvFormat;
|
18104
|
+
exports.csvFormatBody = csvFormatBody;
|
18105
|
+
exports.csvFormatRow = csvFormatRow;
|
18106
|
+
exports.csvFormatRows = csvFormatRows;
|
18107
|
+
exports.csvFormatValue = csvFormatValue;
|
18108
|
+
exports.csvParse = csvParse;
|
18109
|
+
exports.csvParseRows = csvParseRows;
|
18110
|
+
exports.cubehelix = cubehelix;
|
18111
|
+
exports.curveBasis = basis$2;
|
18112
|
+
exports.curveBasisClosed = basisClosed$1;
|
18113
|
+
exports.curveBasisOpen = basisOpen;
|
18114
|
+
exports.curveBundle = bundle;
|
18115
|
+
exports.curveCardinal = cardinal;
|
18116
|
+
exports.curveCardinalClosed = cardinalClosed;
|
18117
|
+
exports.curveCardinalOpen = cardinalOpen;
|
18118
|
+
exports.curveCatmullRom = catmullRom;
|
18119
|
+
exports.curveCatmullRomClosed = catmullRomClosed;
|
18120
|
+
exports.curveCatmullRomOpen = catmullRomOpen;
|
18121
|
+
exports.curveLinear = curveLinear;
|
18122
|
+
exports.curveLinearClosed = linearClosed;
|
18123
|
+
exports.curveMonotoneX = monotoneX;
|
18124
|
+
exports.curveMonotoneY = monotoneY;
|
18125
|
+
exports.curveNatural = natural;
|
18126
|
+
exports.curveStep = step;
|
18127
|
+
exports.curveStepAfter = stepAfter;
|
18128
|
+
exports.curveStepBefore = stepBefore;
|
18129
|
+
exports.customEvent = customEvent;
|
18130
|
+
exports.descending = descending;
|
18131
|
+
exports.deviation = deviation;
|
17864
18132
|
exports.dispatch = dispatch;
|
17865
18133
|
exports.drag = drag;
|
17866
18134
|
exports.dragDisable = dragDisable;
|
17867
18135
|
exports.dragEnable = yesdrag;
|
18136
|
+
exports.dsv = dsv;
|
17868
18137
|
exports.dsvFormat = dsvFormat;
|
17869
|
-
exports.
|
17870
|
-
exports.
|
17871
|
-
exports.
|
17872
|
-
exports.
|
17873
|
-
exports.
|
17874
|
-
exports.
|
17875
|
-
exports.
|
17876
|
-
exports.
|
17877
|
-
exports.
|
17878
|
-
exports.
|
17879
|
-
exports.
|
17880
|
-
exports.
|
17881
|
-
exports.easeQuad = quadInOut;
|
17882
|
-
exports.easeQuadIn = quadIn;
|
17883
|
-
exports.easeQuadOut = quadOut;
|
17884
|
-
exports.easeQuadInOut = quadInOut;
|
18138
|
+
exports.easeBack = backInOut;
|
18139
|
+
exports.easeBackIn = backIn;
|
18140
|
+
exports.easeBackInOut = backInOut;
|
18141
|
+
exports.easeBackOut = backOut;
|
18142
|
+
exports.easeBounce = bounceOut;
|
18143
|
+
exports.easeBounceIn = bounceIn;
|
18144
|
+
exports.easeBounceInOut = bounceInOut;
|
18145
|
+
exports.easeBounceOut = bounceOut;
|
18146
|
+
exports.easeCircle = circleInOut;
|
18147
|
+
exports.easeCircleIn = circleIn;
|
18148
|
+
exports.easeCircleInOut = circleInOut;
|
18149
|
+
exports.easeCircleOut = circleOut;
|
17885
18150
|
exports.easeCubic = cubicInOut;
|
17886
18151
|
exports.easeCubicIn = cubicIn;
|
17887
|
-
exports.easeCubicOut = cubicOut;
|
17888
18152
|
exports.easeCubicInOut = cubicInOut;
|
18153
|
+
exports.easeCubicOut = cubicOut;
|
18154
|
+
exports.easeElastic = elasticOut;
|
18155
|
+
exports.easeElasticIn = elasticIn;
|
18156
|
+
exports.easeElasticInOut = elasticInOut;
|
18157
|
+
exports.easeElasticOut = elasticOut;
|
18158
|
+
exports.easeExp = expInOut;
|
18159
|
+
exports.easeExpIn = expIn;
|
18160
|
+
exports.easeExpInOut = expInOut;
|
18161
|
+
exports.easeExpOut = expOut;
|
18162
|
+
exports.easeLinear = linear$1;
|
17889
18163
|
exports.easePoly = polyInOut;
|
17890
18164
|
exports.easePolyIn = polyIn;
|
17891
|
-
exports.easePolyOut = polyOut;
|
17892
18165
|
exports.easePolyInOut = polyInOut;
|
18166
|
+
exports.easePolyOut = polyOut;
|
18167
|
+
exports.easeQuad = quadInOut;
|
18168
|
+
exports.easeQuadIn = quadIn;
|
18169
|
+
exports.easeQuadInOut = quadInOut;
|
18170
|
+
exports.easeQuadOut = quadOut;
|
17893
18171
|
exports.easeSin = sinInOut;
|
17894
18172
|
exports.easeSinIn = sinIn;
|
17895
|
-
exports.easeSinOut = sinOut;
|
17896
18173
|
exports.easeSinInOut = sinInOut;
|
17897
|
-
exports.
|
17898
|
-
exports.
|
17899
|
-
exports.
|
17900
|
-
exports.easeExpInOut = expInOut;
|
17901
|
-
exports.easeCircle = circleInOut;
|
17902
|
-
exports.easeCircleIn = circleIn;
|
17903
|
-
exports.easeCircleOut = circleOut;
|
17904
|
-
exports.easeCircleInOut = circleInOut;
|
17905
|
-
exports.easeBounce = bounceOut;
|
17906
|
-
exports.easeBounceIn = bounceIn;
|
17907
|
-
exports.easeBounceOut = bounceOut;
|
17908
|
-
exports.easeBounceInOut = bounceInOut;
|
17909
|
-
exports.easeBack = backInOut;
|
17910
|
-
exports.easeBackIn = backIn;
|
17911
|
-
exports.easeBackOut = backOut;
|
17912
|
-
exports.easeBackInOut = backInOut;
|
17913
|
-
exports.easeElastic = elasticOut;
|
17914
|
-
exports.easeElasticIn = elasticIn;
|
17915
|
-
exports.easeElasticOut = elasticOut;
|
17916
|
-
exports.easeElasticInOut = elasticInOut;
|
17917
|
-
exports.blob = blob;
|
17918
|
-
exports.buffer = buffer;
|
17919
|
-
exports.dsv = dsv;
|
17920
|
-
exports.csv = csv$1;
|
17921
|
-
exports.tsv = tsv$1;
|
17922
|
-
exports.image = image;
|
17923
|
-
exports.json = json;
|
17924
|
-
exports.text = text;
|
17925
|
-
exports.xml = xml;
|
17926
|
-
exports.html = html;
|
17927
|
-
exports.svg = svg;
|
18174
|
+
exports.easeSinOut = sinOut;
|
18175
|
+
exports.entries = entries;
|
18176
|
+
exports.extent = extent;
|
17928
18177
|
exports.forceCenter = center$1;
|
17929
18178
|
exports.forceCollide = collide;
|
17930
18179
|
exports.forceLink = link;
|
@@ -17936,10 +18185,13 @@ exports.forceY = y$2;
|
|
17936
18185
|
exports.formatDefaultLocale = defaultLocale;
|
17937
18186
|
exports.formatLocale = formatLocale;
|
17938
18187
|
exports.formatSpecifier = formatSpecifier;
|
17939
|
-
exports.
|
17940
|
-
exports.
|
17941
|
-
exports.precisionRound = precisionRound;
|
18188
|
+
exports.geoAlbers = albers;
|
18189
|
+
exports.geoAlbersUsa = albersUsa;
|
17942
18190
|
exports.geoArea = area$1;
|
18191
|
+
exports.geoAzimuthalEqualArea = azimuthalEqualArea;
|
18192
|
+
exports.geoAzimuthalEqualAreaRaw = azimuthalEqualAreaRaw;
|
18193
|
+
exports.geoAzimuthalEquidistant = azimuthalEquidistant;
|
18194
|
+
exports.geoAzimuthalEquidistantRaw = azimuthalEquidistantRaw;
|
17943
18195
|
exports.geoBounds = bounds;
|
17944
18196
|
exports.geoCentroid = centroid;
|
17945
18197
|
exports.geoCircle = circle;
|
@@ -17947,260 +18199,243 @@ exports.geoClipAntimeridian = clipAntimeridian;
|
|
17947
18199
|
exports.geoClipCircle = clipCircle;
|
17948
18200
|
exports.geoClipExtent = extent$1;
|
17949
18201
|
exports.geoClipRectangle = clipRectangle;
|
17950
|
-
exports.geoContains = contains$1;
|
17951
|
-
exports.geoDistance = distance;
|
17952
|
-
exports.geoGraticule = graticule;
|
17953
|
-
exports.geoGraticule10 = graticule10;
|
17954
|
-
exports.geoInterpolate = interpolate$1;
|
17955
|
-
exports.geoLength = length$1;
|
17956
|
-
exports.geoPath = index$1;
|
17957
|
-
exports.geoAlbers = albers;
|
17958
|
-
exports.geoAlbersUsa = albersUsa;
|
17959
|
-
exports.geoAzimuthalEqualArea = azimuthalEqualArea;
|
17960
|
-
exports.geoAzimuthalEqualAreaRaw = azimuthalEqualAreaRaw;
|
17961
|
-
exports.geoAzimuthalEquidistant = azimuthalEquidistant;
|
17962
|
-
exports.geoAzimuthalEquidistantRaw = azimuthalEquidistantRaw;
|
17963
18202
|
exports.geoConicConformal = conicConformal;
|
17964
18203
|
exports.geoConicConformalRaw = conicConformalRaw;
|
17965
18204
|
exports.geoConicEqualArea = conicEqualArea;
|
17966
18205
|
exports.geoConicEqualAreaRaw = conicEqualAreaRaw;
|
17967
18206
|
exports.geoConicEquidistant = conicEquidistant;
|
17968
18207
|
exports.geoConicEquidistantRaw = conicEquidistantRaw;
|
18208
|
+
exports.geoContains = contains$1;
|
18209
|
+
exports.geoDistance = distance;
|
17969
18210
|
exports.geoEqualEarth = equalEarth;
|
17970
18211
|
exports.geoEqualEarthRaw = equalEarthRaw;
|
17971
18212
|
exports.geoEquirectangular = equirectangular;
|
17972
18213
|
exports.geoEquirectangularRaw = equirectangularRaw;
|
17973
18214
|
exports.geoGnomonic = gnomonic;
|
17974
18215
|
exports.geoGnomonicRaw = gnomonicRaw;
|
18216
|
+
exports.geoGraticule = graticule;
|
18217
|
+
exports.geoGraticule10 = graticule10;
|
17975
18218
|
exports.geoIdentity = identity$5;
|
17976
|
-
exports.
|
17977
|
-
exports.
|
18219
|
+
exports.geoInterpolate = interpolate$1;
|
18220
|
+
exports.geoLength = length$1;
|
17978
18221
|
exports.geoMercator = mercator;
|
17979
18222
|
exports.geoMercatorRaw = mercatorRaw;
|
17980
18223
|
exports.geoNaturalEarth1 = naturalEarth1;
|
17981
18224
|
exports.geoNaturalEarth1Raw = naturalEarth1Raw;
|
17982
18225
|
exports.geoOrthographic = orthographic;
|
17983
18226
|
exports.geoOrthographicRaw = orthographicRaw;
|
18227
|
+
exports.geoPath = index$1;
|
18228
|
+
exports.geoProjection = projection;
|
18229
|
+
exports.geoProjectionMutator = projectionMutator;
|
18230
|
+
exports.geoRotation = rotation;
|
17984
18231
|
exports.geoStereographic = stereographic;
|
17985
18232
|
exports.geoStereographicRaw = stereographicRaw;
|
17986
|
-
exports.geoTransverseMercator = transverseMercator;
|
17987
|
-
exports.geoTransverseMercatorRaw = transverseMercatorRaw;
|
17988
|
-
exports.geoRotation = rotation;
|
17989
18233
|
exports.geoStream = geoStream;
|
17990
18234
|
exports.geoTransform = transform;
|
17991
|
-
exports.
|
18235
|
+
exports.geoTransverseMercator = transverseMercator;
|
18236
|
+
exports.geoTransverseMercatorRaw = transverseMercatorRaw;
|
18237
|
+
exports.gray = gray;
|
18238
|
+
exports.hcl = hcl;
|
17992
18239
|
exports.hierarchy = hierarchy;
|
17993
|
-
exports.
|
17994
|
-
exports.
|
17995
|
-
exports.
|
17996
|
-
exports.
|
17997
|
-
exports.stratify = stratify;
|
17998
|
-
exports.tree = tree;
|
17999
|
-
exports.treemap = index$3;
|
18000
|
-
exports.treemapBinary = binary;
|
18001
|
-
exports.treemapDice = treemapDice;
|
18002
|
-
exports.treemapSlice = treemapSlice;
|
18003
|
-
exports.treemapSliceDice = sliceDice;
|
18004
|
-
exports.treemapSquarify = squarify;
|
18005
|
-
exports.treemapResquarify = resquarify;
|
18240
|
+
exports.histogram = histogram;
|
18241
|
+
exports.hsl = hsl;
|
18242
|
+
exports.html = html;
|
18243
|
+
exports.image = image;
|
18006
18244
|
exports.interpolate = interpolateValue;
|
18007
18245
|
exports.interpolateArray = array$1;
|
18008
18246
|
exports.interpolateBasis = basis$1;
|
18009
18247
|
exports.interpolateBasisClosed = basisClosed;
|
18248
|
+
exports.interpolateBlues = Blues;
|
18249
|
+
exports.interpolateBrBG = BrBG;
|
18250
|
+
exports.interpolateBuGn = BuGn;
|
18251
|
+
exports.interpolateBuPu = BuPu;
|
18252
|
+
exports.interpolateCividis = cividis;
|
18253
|
+
exports.interpolateCool = cool;
|
18254
|
+
exports.interpolateCubehelix = cubehelix$2;
|
18255
|
+
exports.interpolateCubehelixDefault = cubehelix$3;
|
18256
|
+
exports.interpolateCubehelixLong = cubehelixLong;
|
18010
18257
|
exports.interpolateDate = date;
|
18011
18258
|
exports.interpolateDiscrete = discrete;
|
18259
|
+
exports.interpolateGnBu = GnBu;
|
18260
|
+
exports.interpolateGreens = Greens;
|
18261
|
+
exports.interpolateGreys = Greys;
|
18262
|
+
exports.interpolateHcl = hcl$2;
|
18263
|
+
exports.interpolateHclLong = hclLong;
|
18264
|
+
exports.interpolateHsl = hsl$2;
|
18265
|
+
exports.interpolateHslLong = hslLong;
|
18012
18266
|
exports.interpolateHue = hue$1;
|
18267
|
+
exports.interpolateInferno = inferno;
|
18268
|
+
exports.interpolateLab = lab$1;
|
18269
|
+
exports.interpolateMagma = magma;
|
18013
18270
|
exports.interpolateNumber = interpolateNumber;
|
18271
|
+
exports.interpolateNumberArray = numberArray;
|
18014
18272
|
exports.interpolateObject = object;
|
18273
|
+
exports.interpolateOrRd = OrRd;
|
18274
|
+
exports.interpolateOranges = Oranges;
|
18275
|
+
exports.interpolatePRGn = PRGn;
|
18276
|
+
exports.interpolatePiYG = PiYG;
|
18277
|
+
exports.interpolatePlasma = plasma;
|
18278
|
+
exports.interpolatePuBu = PuBu;
|
18279
|
+
exports.interpolatePuBuGn = PuBuGn;
|
18280
|
+
exports.interpolatePuOr = PuOr;
|
18281
|
+
exports.interpolatePuRd = PuRd;
|
18282
|
+
exports.interpolatePurples = Purples;
|
18283
|
+
exports.interpolateRainbow = rainbow;
|
18284
|
+
exports.interpolateRdBu = RdBu;
|
18285
|
+
exports.interpolateRdGy = RdGy;
|
18286
|
+
exports.interpolateRdPu = RdPu;
|
18287
|
+
exports.interpolateRdYlBu = RdYlBu;
|
18288
|
+
exports.interpolateRdYlGn = RdYlGn;
|
18289
|
+
exports.interpolateReds = Reds;
|
18290
|
+
exports.interpolateRgb = interpolateRgb;
|
18291
|
+
exports.interpolateRgbBasis = rgbBasis;
|
18292
|
+
exports.interpolateRgbBasisClosed = rgbBasisClosed;
|
18015
18293
|
exports.interpolateRound = interpolateRound;
|
18294
|
+
exports.interpolateSinebow = sinebow;
|
18295
|
+
exports.interpolateSpectral = Spectral;
|
18016
18296
|
exports.interpolateString = interpolateString;
|
18017
18297
|
exports.interpolateTransformCss = interpolateTransformCss;
|
18018
18298
|
exports.interpolateTransformSvg = interpolateTransformSvg;
|
18299
|
+
exports.interpolateTurbo = turbo;
|
18300
|
+
exports.interpolateViridis = viridis;
|
18301
|
+
exports.interpolateWarm = warm;
|
18302
|
+
exports.interpolateYlGn = YlGn;
|
18303
|
+
exports.interpolateYlGnBu = YlGnBu;
|
18304
|
+
exports.interpolateYlOrBr = YlOrBr;
|
18305
|
+
exports.interpolateYlOrRd = YlOrRd;
|
18019
18306
|
exports.interpolateZoom = interpolateZoom;
|
18020
|
-
exports.
|
18021
|
-
exports.
|
18022
|
-
exports.
|
18023
|
-
exports.
|
18024
|
-
exports.
|
18025
|
-
exports.
|
18026
|
-
exports.
|
18027
|
-
exports.
|
18028
|
-
exports.
|
18029
|
-
exports.
|
18030
|
-
exports.
|
18031
|
-
exports.
|
18032
|
-
exports.
|
18033
|
-
exports.
|
18034
|
-
exports.
|
18035
|
-
exports.
|
18036
|
-
exports.
|
18037
|
-
exports.
|
18038
|
-
exports.
|
18039
|
-
exports.
|
18040
|
-
exports.
|
18041
|
-
exports.
|
18307
|
+
exports.interrupt = interrupt;
|
18308
|
+
exports.interval = interval$1;
|
18309
|
+
exports.isoFormat = formatIso;
|
18310
|
+
exports.isoParse = parseIso;
|
18311
|
+
exports.json = json;
|
18312
|
+
exports.keys = keys;
|
18313
|
+
exports.lab = lab;
|
18314
|
+
exports.lch = lch;
|
18315
|
+
exports.line = line;
|
18316
|
+
exports.lineRadial = lineRadial$1;
|
18317
|
+
exports.linkHorizontal = linkHorizontal;
|
18318
|
+
exports.linkRadial = linkRadial;
|
18319
|
+
exports.linkVertical = linkVertical;
|
18320
|
+
exports.local = local;
|
18321
|
+
exports.map = map$1;
|
18322
|
+
exports.matcher = matcher;
|
18323
|
+
exports.max = max;
|
18324
|
+
exports.mean = mean;
|
18325
|
+
exports.median = median;
|
18326
|
+
exports.merge = merge;
|
18327
|
+
exports.min = min;
|
18328
|
+
exports.mouse = mouse;
|
18329
|
+
exports.namespace = namespace;
|
18330
|
+
exports.namespaces = namespaces;
|
18331
|
+
exports.nest = nest;
|
18332
|
+
exports.now = now;
|
18333
|
+
exports.pack = index$2;
|
18334
|
+
exports.packEnclose = enclose;
|
18335
|
+
exports.packSiblings = siblings;
|
18336
|
+
exports.pairs = pairs;
|
18337
|
+
exports.partition = partition;
|
18338
|
+
exports.path = path;
|
18339
|
+
exports.permute = permute;
|
18340
|
+
exports.pie = pie;
|
18341
|
+
exports.piecewise = piecewise;
|
18342
|
+
exports.pointRadial = pointRadial;
|
18343
|
+
exports.polygonArea = area$2;
|
18344
|
+
exports.polygonCentroid = centroid$1;
|
18345
|
+
exports.polygonContains = contains$2;
|
18346
|
+
exports.polygonHull = hull;
|
18347
|
+
exports.polygonLength = length$2;
|
18348
|
+
exports.precisionFixed = precisionFixed;
|
18349
|
+
exports.precisionPrefix = precisionPrefix;
|
18350
|
+
exports.precisionRound = precisionRound;
|
18351
|
+
exports.quadtree = quadtree;
|
18352
|
+
exports.quantile = threshold;
|
18353
|
+
exports.quantize = quantize;
|
18354
|
+
exports.radialArea = areaRadial;
|
18355
|
+
exports.radialLine = lineRadial$1;
|
18042
18356
|
exports.randomBates = bates;
|
18043
|
-
exports.randomIrwinHall = irwinHall;
|
18044
18357
|
exports.randomExponential = exponential$1;
|
18358
|
+
exports.randomIrwinHall = irwinHall;
|
18359
|
+
exports.randomLogNormal = logNormal;
|
18360
|
+
exports.randomNormal = normal;
|
18361
|
+
exports.randomUniform = uniform;
|
18362
|
+
exports.range = sequence;
|
18363
|
+
exports.rgb = rgb;
|
18364
|
+
exports.ribbon = ribbon;
|
18045
18365
|
exports.scaleBand = band;
|
18046
|
-
exports.
|
18366
|
+
exports.scaleDiverging = diverging;
|
18367
|
+
exports.scaleDivergingLog = divergingLog;
|
18368
|
+
exports.scaleDivergingPow = divergingPow;
|
18369
|
+
exports.scaleDivergingSqrt = divergingSqrt;
|
18370
|
+
exports.scaleDivergingSymlog = divergingSymlog;
|
18047
18371
|
exports.scaleIdentity = identity$7;
|
18372
|
+
exports.scaleImplicit = implicit;
|
18048
18373
|
exports.scaleLinear = linear$2;
|
18049
18374
|
exports.scaleLog = log$1;
|
18050
|
-
exports.scaleSymlog = symlog;
|
18051
18375
|
exports.scaleOrdinal = ordinal;
|
18052
|
-
exports.
|
18376
|
+
exports.scalePoint = point$1;
|
18053
18377
|
exports.scalePow = pow$1;
|
18054
|
-
exports.
|
18055
|
-
exports.scaleQuantile = quantile$$1;
|
18378
|
+
exports.scaleQuantile = quantile;
|
18056
18379
|
exports.scaleQuantize = quantize$1;
|
18057
|
-
exports.scaleThreshold = threshold$1;
|
18058
|
-
exports.scaleTime = time;
|
18059
|
-
exports.scaleUtc = utcTime;
|
18060
18380
|
exports.scaleSequential = sequential;
|
18061
18381
|
exports.scaleSequentialLog = sequentialLog;
|
18062
18382
|
exports.scaleSequentialPow = sequentialPow;
|
18383
|
+
exports.scaleSequentialQuantile = sequentialQuantile;
|
18063
18384
|
exports.scaleSequentialSqrt = sequentialSqrt;
|
18064
18385
|
exports.scaleSequentialSymlog = sequentialSymlog;
|
18065
|
-
exports.
|
18066
|
-
exports.
|
18067
|
-
exports.
|
18068
|
-
exports.
|
18069
|
-
exports.
|
18070
|
-
exports.
|
18071
|
-
exports.tickFormat = tickFormat;
|
18072
|
-
exports.schemeCategory10 = category10;
|
18386
|
+
exports.scaleSqrt = sqrt$1;
|
18387
|
+
exports.scaleSymlog = symlog;
|
18388
|
+
exports.scaleThreshold = threshold$1;
|
18389
|
+
exports.scaleTime = time;
|
18390
|
+
exports.scaleUtc = utcTime;
|
18391
|
+
exports.scan = scan;
|
18073
18392
|
exports.schemeAccent = Accent;
|
18393
|
+
exports.schemeBlues = scheme$l;
|
18394
|
+
exports.schemeBrBG = scheme;
|
18395
|
+
exports.schemeBuGn = scheme$9;
|
18396
|
+
exports.schemeBuPu = scheme$a;
|
18397
|
+
exports.schemeCategory10 = category10;
|
18074
18398
|
exports.schemeDark2 = Dark2;
|
18399
|
+
exports.schemeGnBu = scheme$b;
|
18400
|
+
exports.schemeGreens = scheme$m;
|
18401
|
+
exports.schemeGreys = scheme$n;
|
18402
|
+
exports.schemeOrRd = scheme$c;
|
18403
|
+
exports.schemeOranges = scheme$q;
|
18404
|
+
exports.schemePRGn = scheme$1;
|
18075
18405
|
exports.schemePaired = Paired;
|
18076
18406
|
exports.schemePastel1 = Pastel1;
|
18077
18407
|
exports.schemePastel2 = Pastel2;
|
18078
|
-
exports.schemeSet1 = Set1;
|
18079
|
-
exports.schemeSet2 = Set2;
|
18080
|
-
exports.schemeSet3 = Set3;
|
18081
|
-
exports.interpolateBrBG = BrBG;
|
18082
|
-
exports.schemeBrBG = scheme;
|
18083
|
-
exports.interpolatePRGn = PRGn;
|
18084
|
-
exports.schemePRGn = scheme$1;
|
18085
|
-
exports.interpolatePiYG = PiYG;
|
18086
18408
|
exports.schemePiYG = scheme$2;
|
18087
|
-
exports.
|
18409
|
+
exports.schemePuBu = scheme$e;
|
18410
|
+
exports.schemePuBuGn = scheme$d;
|
18088
18411
|
exports.schemePuOr = scheme$3;
|
18089
|
-
exports.
|
18412
|
+
exports.schemePuRd = scheme$f;
|
18413
|
+
exports.schemePurples = scheme$o;
|
18090
18414
|
exports.schemeRdBu = scheme$4;
|
18091
|
-
exports.interpolateRdGy = RdGy;
|
18092
18415
|
exports.schemeRdGy = scheme$5;
|
18093
|
-
exports.
|
18416
|
+
exports.schemeRdPu = scheme$g;
|
18094
18417
|
exports.schemeRdYlBu = scheme$6;
|
18095
|
-
exports.interpolateRdYlGn = RdYlGn;
|
18096
18418
|
exports.schemeRdYlGn = scheme$7;
|
18097
|
-
exports.
|
18419
|
+
exports.schemeReds = scheme$p;
|
18420
|
+
exports.schemeSet1 = Set1;
|
18421
|
+
exports.schemeSet2 = Set2;
|
18422
|
+
exports.schemeSet3 = Set3;
|
18098
18423
|
exports.schemeSpectral = scheme$8;
|
18099
|
-
exports.
|
18100
|
-
exports.schemeBuGn = scheme$9;
|
18101
|
-
exports.interpolateBuPu = BuPu;
|
18102
|
-
exports.schemeBuPu = scheme$a;
|
18103
|
-
exports.interpolateGnBu = GnBu;
|
18104
|
-
exports.schemeGnBu = scheme$b;
|
18105
|
-
exports.interpolateOrRd = OrRd;
|
18106
|
-
exports.schemeOrRd = scheme$c;
|
18107
|
-
exports.interpolatePuBuGn = PuBuGn;
|
18108
|
-
exports.schemePuBuGn = scheme$d;
|
18109
|
-
exports.interpolatePuBu = PuBu;
|
18110
|
-
exports.schemePuBu = scheme$e;
|
18111
|
-
exports.interpolatePuRd = PuRd;
|
18112
|
-
exports.schemePuRd = scheme$f;
|
18113
|
-
exports.interpolateRdPu = RdPu;
|
18114
|
-
exports.schemeRdPu = scheme$g;
|
18115
|
-
exports.interpolateYlGnBu = YlGnBu;
|
18116
|
-
exports.schemeYlGnBu = scheme$h;
|
18117
|
-
exports.interpolateYlGn = YlGn;
|
18424
|
+
exports.schemeTableau10 = Tableau10;
|
18118
18425
|
exports.schemeYlGn = scheme$i;
|
18119
|
-
exports.
|
18426
|
+
exports.schemeYlGnBu = scheme$h;
|
18120
18427
|
exports.schemeYlOrBr = scheme$j;
|
18121
|
-
exports.interpolateYlOrRd = YlOrRd;
|
18122
18428
|
exports.schemeYlOrRd = scheme$k;
|
18123
|
-
exports.interpolateBlues = Blues;
|
18124
|
-
exports.schemeBlues = scheme$l;
|
18125
|
-
exports.interpolateGreens = Greens;
|
18126
|
-
exports.schemeGreens = scheme$m;
|
18127
|
-
exports.interpolateGreys = Greys;
|
18128
|
-
exports.schemeGreys = scheme$n;
|
18129
|
-
exports.interpolatePurples = Purples;
|
18130
|
-
exports.schemePurples = scheme$o;
|
18131
|
-
exports.interpolateReds = Reds;
|
18132
|
-
exports.schemeReds = scheme$p;
|
18133
|
-
exports.interpolateOranges = Oranges;
|
18134
|
-
exports.schemeOranges = scheme$q;
|
18135
|
-
exports.interpolateCubehelixDefault = cubehelix$3;
|
18136
|
-
exports.interpolateRainbow = rainbow;
|
18137
|
-
exports.interpolateWarm = warm;
|
18138
|
-
exports.interpolateCool = cool;
|
18139
|
-
exports.interpolateSinebow = sinebow;
|
18140
|
-
exports.interpolateViridis = viridis;
|
18141
|
-
exports.interpolateMagma = magma;
|
18142
|
-
exports.interpolateInferno = inferno;
|
18143
|
-
exports.interpolatePlasma = plasma;
|
18144
|
-
exports.create = create;
|
18145
|
-
exports.creator = creator;
|
18146
|
-
exports.local = local;
|
18147
|
-
exports.matcher = matcher;
|
18148
|
-
exports.mouse = mouse;
|
18149
|
-
exports.namespace = namespace;
|
18150
|
-
exports.namespaces = namespaces;
|
18151
|
-
exports.clientPoint = point;
|
18152
18429
|
exports.select = select;
|
18153
18430
|
exports.selectAll = selectAll;
|
18154
18431
|
exports.selection = selection;
|
18155
18432
|
exports.selector = selector;
|
18156
18433
|
exports.selectorAll = selectorAll;
|
18157
|
-
exports.
|
18158
|
-
exports.
|
18159
|
-
exports.touches = touches;
|
18160
|
-
exports.window = defaultView;
|
18161
|
-
exports.customEvent = customEvent;
|
18162
|
-
exports.arc = arc;
|
18163
|
-
exports.area = area$3;
|
18164
|
-
exports.line = line;
|
18165
|
-
exports.pie = pie;
|
18166
|
-
exports.areaRadial = areaRadial;
|
18167
|
-
exports.radialArea = areaRadial;
|
18168
|
-
exports.lineRadial = lineRadial$1;
|
18169
|
-
exports.radialLine = lineRadial$1;
|
18170
|
-
exports.pointRadial = pointRadial;
|
18171
|
-
exports.linkHorizontal = linkHorizontal;
|
18172
|
-
exports.linkVertical = linkVertical;
|
18173
|
-
exports.linkRadial = linkRadial;
|
18174
|
-
exports.symbol = symbol;
|
18175
|
-
exports.symbols = symbols;
|
18176
|
-
exports.symbolCircle = circle$2;
|
18177
|
-
exports.symbolCross = cross$2;
|
18178
|
-
exports.symbolDiamond = diamond;
|
18179
|
-
exports.symbolSquare = square;
|
18180
|
-
exports.symbolStar = star;
|
18181
|
-
exports.symbolTriangle = triangle;
|
18182
|
-
exports.symbolWye = wye;
|
18183
|
-
exports.curveBasisClosed = basisClosed$1;
|
18184
|
-
exports.curveBasisOpen = basisOpen;
|
18185
|
-
exports.curveBasis = basis$2;
|
18186
|
-
exports.curveBundle = bundle;
|
18187
|
-
exports.curveCardinalClosed = cardinalClosed;
|
18188
|
-
exports.curveCardinalOpen = cardinalOpen;
|
18189
|
-
exports.curveCardinal = cardinal;
|
18190
|
-
exports.curveCatmullRomClosed = catmullRomClosed;
|
18191
|
-
exports.curveCatmullRomOpen = catmullRomOpen;
|
18192
|
-
exports.curveCatmullRom = catmullRom;
|
18193
|
-
exports.curveLinearClosed = linearClosed;
|
18194
|
-
exports.curveLinear = curveLinear;
|
18195
|
-
exports.curveMonotoneX = monotoneX;
|
18196
|
-
exports.curveMonotoneY = monotoneY;
|
18197
|
-
exports.curveNatural = natural;
|
18198
|
-
exports.curveStep = step;
|
18199
|
-
exports.curveStepAfter = stepAfter;
|
18200
|
-
exports.curveStepBefore = stepBefore;
|
18434
|
+
exports.set = set$2;
|
18435
|
+
exports.shuffle = shuffle;
|
18201
18436
|
exports.stack = stack;
|
18202
|
-
exports.stackOffsetExpand = expand;
|
18203
18437
|
exports.stackOffsetDiverging = diverging$1;
|
18438
|
+
exports.stackOffsetExpand = expand;
|
18204
18439
|
exports.stackOffsetNone = none$1;
|
18205
18440
|
exports.stackOffsetSilhouette = silhouette;
|
18206
18441
|
exports.stackOffsetWiggle = wiggle;
|
@@ -18210,84 +18445,124 @@ exports.stackOrderDescending = descending$2;
|
|
18210
18445
|
exports.stackOrderInsideOut = insideOut;
|
18211
18446
|
exports.stackOrderNone = none$2;
|
18212
18447
|
exports.stackOrderReverse = reverse;
|
18448
|
+
exports.stratify = stratify;
|
18449
|
+
exports.style = styleValue;
|
18450
|
+
exports.sum = sum;
|
18451
|
+
exports.svg = svg;
|
18452
|
+
exports.symbol = symbol;
|
18453
|
+
exports.symbolCircle = circle$2;
|
18454
|
+
exports.symbolCross = cross$2;
|
18455
|
+
exports.symbolDiamond = diamond;
|
18456
|
+
exports.symbolSquare = square;
|
18457
|
+
exports.symbolStar = star;
|
18458
|
+
exports.symbolTriangle = triangle;
|
18459
|
+
exports.symbolWye = wye;
|
18460
|
+
exports.symbols = symbols;
|
18461
|
+
exports.text = text;
|
18462
|
+
exports.thresholdFreedmanDiaconis = freedmanDiaconis;
|
18463
|
+
exports.thresholdScott = scott;
|
18464
|
+
exports.thresholdSturges = thresholdSturges;
|
18465
|
+
exports.tickFormat = tickFormat;
|
18466
|
+
exports.tickIncrement = tickIncrement;
|
18467
|
+
exports.tickStep = tickStep;
|
18468
|
+
exports.ticks = ticks;
|
18469
|
+
exports.timeDay = day;
|
18470
|
+
exports.timeDays = days;
|
18471
|
+
exports.timeFormatDefaultLocale = defaultLocale$1;
|
18472
|
+
exports.timeFormatLocale = formatLocale$1;
|
18473
|
+
exports.timeFriday = friday;
|
18474
|
+
exports.timeFridays = fridays;
|
18475
|
+
exports.timeHour = hour;
|
18476
|
+
exports.timeHours = hours;
|
18213
18477
|
exports.timeInterval = newInterval;
|
18214
18478
|
exports.timeMillisecond = millisecond;
|
18215
18479
|
exports.timeMilliseconds = milliseconds;
|
18216
|
-
exports.utcMillisecond = millisecond;
|
18217
|
-
exports.utcMilliseconds = milliseconds;
|
18218
|
-
exports.timeSecond = second;
|
18219
|
-
exports.timeSeconds = seconds;
|
18220
|
-
exports.utcSecond = second;
|
18221
|
-
exports.utcSeconds = seconds;
|
18222
18480
|
exports.timeMinute = minute;
|
18223
18481
|
exports.timeMinutes = minutes;
|
18224
|
-
exports.timeHour = hour;
|
18225
|
-
exports.timeHours = hours;
|
18226
|
-
exports.timeDay = day;
|
18227
|
-
exports.timeDays = days;
|
18228
|
-
exports.timeWeek = sunday;
|
18229
|
-
exports.timeWeeks = sundays;
|
18230
|
-
exports.timeSunday = sunday;
|
18231
|
-
exports.timeSundays = sundays;
|
18232
18482
|
exports.timeMonday = monday;
|
18233
18483
|
exports.timeMondays = mondays;
|
18484
|
+
exports.timeMonth = month;
|
18485
|
+
exports.timeMonths = months;
|
18486
|
+
exports.timeSaturday = saturday;
|
18487
|
+
exports.timeSaturdays = saturdays;
|
18488
|
+
exports.timeSecond = second;
|
18489
|
+
exports.timeSeconds = seconds;
|
18490
|
+
exports.timeSunday = sunday;
|
18491
|
+
exports.timeSundays = sundays;
|
18492
|
+
exports.timeThursday = thursday;
|
18493
|
+
exports.timeThursdays = thursdays;
|
18234
18494
|
exports.timeTuesday = tuesday;
|
18235
18495
|
exports.timeTuesdays = tuesdays;
|
18236
18496
|
exports.timeWednesday = wednesday;
|
18237
18497
|
exports.timeWednesdays = wednesdays;
|
18238
|
-
exports.
|
18239
|
-
exports.
|
18240
|
-
exports.timeFriday = friday;
|
18241
|
-
exports.timeFridays = fridays;
|
18242
|
-
exports.timeSaturday = saturday;
|
18243
|
-
exports.timeSaturdays = saturdays;
|
18244
|
-
exports.timeMonth = month;
|
18245
|
-
exports.timeMonths = months;
|
18498
|
+
exports.timeWeek = sunday;
|
18499
|
+
exports.timeWeeks = sundays;
|
18246
18500
|
exports.timeYear = year;
|
18247
18501
|
exports.timeYears = years;
|
18248
|
-
exports.
|
18249
|
-
exports.
|
18250
|
-
exports.
|
18251
|
-
exports.
|
18502
|
+
exports.timeout = timeout$1;
|
18503
|
+
exports.timer = timer;
|
18504
|
+
exports.timerFlush = timerFlush;
|
18505
|
+
exports.touch = touch;
|
18506
|
+
exports.touches = touches;
|
18507
|
+
exports.transition = transition;
|
18508
|
+
exports.transpose = transpose;
|
18509
|
+
exports.tree = tree;
|
18510
|
+
exports.treemap = index$3;
|
18511
|
+
exports.treemapBinary = binary;
|
18512
|
+
exports.treemapDice = treemapDice;
|
18513
|
+
exports.treemapResquarify = resquarify;
|
18514
|
+
exports.treemapSlice = treemapSlice;
|
18515
|
+
exports.treemapSliceDice = sliceDice;
|
18516
|
+
exports.treemapSquarify = squarify;
|
18517
|
+
exports.tsv = tsv$1;
|
18518
|
+
exports.tsvFormat = tsvFormat;
|
18519
|
+
exports.tsvFormatBody = tsvFormatBody;
|
18520
|
+
exports.tsvFormatRow = tsvFormatRow;
|
18521
|
+
exports.tsvFormatRows = tsvFormatRows;
|
18522
|
+
exports.tsvFormatValue = tsvFormatValue;
|
18523
|
+
exports.tsvParse = tsvParse;
|
18524
|
+
exports.tsvParseRows = tsvParseRows;
|
18252
18525
|
exports.utcDay = utcDay;
|
18253
18526
|
exports.utcDays = utcDays;
|
18254
|
-
exports.
|
18255
|
-
exports.
|
18256
|
-
exports.
|
18257
|
-
exports.
|
18527
|
+
exports.utcFriday = utcFriday;
|
18528
|
+
exports.utcFridays = utcFridays;
|
18529
|
+
exports.utcHour = utcHour;
|
18530
|
+
exports.utcHours = utcHours;
|
18531
|
+
exports.utcMillisecond = millisecond;
|
18532
|
+
exports.utcMilliseconds = milliseconds;
|
18533
|
+
exports.utcMinute = utcMinute;
|
18534
|
+
exports.utcMinutes = utcMinutes;
|
18258
18535
|
exports.utcMonday = utcMonday;
|
18259
18536
|
exports.utcMondays = utcMondays;
|
18537
|
+
exports.utcMonth = utcMonth;
|
18538
|
+
exports.utcMonths = utcMonths;
|
18539
|
+
exports.utcSaturday = utcSaturday;
|
18540
|
+
exports.utcSaturdays = utcSaturdays;
|
18541
|
+
exports.utcSecond = second;
|
18542
|
+
exports.utcSeconds = seconds;
|
18543
|
+
exports.utcSunday = utcSunday;
|
18544
|
+
exports.utcSundays = utcSundays;
|
18545
|
+
exports.utcThursday = utcThursday;
|
18546
|
+
exports.utcThursdays = utcThursdays;
|
18260
18547
|
exports.utcTuesday = utcTuesday;
|
18261
18548
|
exports.utcTuesdays = utcTuesdays;
|
18262
18549
|
exports.utcWednesday = utcWednesday;
|
18263
18550
|
exports.utcWednesdays = utcWednesdays;
|
18264
|
-
exports.
|
18265
|
-
exports.
|
18266
|
-
exports.utcFriday = utcFriday;
|
18267
|
-
exports.utcFridays = utcFridays;
|
18268
|
-
exports.utcSaturday = utcSaturday;
|
18269
|
-
exports.utcSaturdays = utcSaturdays;
|
18270
|
-
exports.utcMonth = utcMonth;
|
18271
|
-
exports.utcMonths = utcMonths;
|
18551
|
+
exports.utcWeek = utcSunday;
|
18552
|
+
exports.utcWeeks = utcSundays;
|
18272
18553
|
exports.utcYear = utcYear;
|
18273
18554
|
exports.utcYears = utcYears;
|
18274
|
-
exports.
|
18275
|
-
exports.
|
18276
|
-
exports.
|
18277
|
-
exports.isoParse = parseIso;
|
18278
|
-
exports.now = now;
|
18279
|
-
exports.timer = timer;
|
18280
|
-
exports.timerFlush = timerFlush;
|
18281
|
-
exports.timeout = timeout$1;
|
18282
|
-
exports.interval = interval$1;
|
18283
|
-
exports.transition = transition;
|
18284
|
-
exports.active = active;
|
18285
|
-
exports.interrupt = interrupt;
|
18555
|
+
exports.values = values;
|
18556
|
+
exports.variance = variance;
|
18557
|
+
exports.version = version;
|
18286
18558
|
exports.voronoi = voronoi;
|
18559
|
+
exports.window = defaultView;
|
18560
|
+
exports.xml = xml;
|
18561
|
+
exports.zip = zip;
|
18287
18562
|
exports.zoom = zoom;
|
18288
|
-
exports.zoomTransform = transform$1;
|
18289
18563
|
exports.zoomIdentity = identity$9;
|
18564
|
+
exports.zoomTransform = transform$1;
|
18290
18565
|
|
18291
18566
|
Object.defineProperty(exports, '__esModule', { value: true });
|
18292
18567
|
|
18293
|
-
}))
|
18568
|
+
}));
|