d3-rails 5.9.2 → 5.16.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +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
|
+
}));
|