plotly.js 2.12.0 → 2.12.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +9 -0
- package/README.md +3 -3
- package/build/plotcss.js +2 -2
- package/dist/README.md +21 -21
- package/dist/plot-schema.json +355 -355
- package/dist/plotly-basic.js +14 -9
- package/dist/plotly-basic.min.js +3 -3
- package/dist/plotly-cartesian.js +14 -9
- package/dist/plotly-cartesian.min.js +3 -3
- package/dist/plotly-finance.js +14 -9
- package/dist/plotly-finance.min.js +3 -3
- package/dist/plotly-geo-assets.js +2 -2
- package/dist/plotly-geo.js +15 -10
- package/dist/plotly-geo.min.js +3 -3
- package/dist/plotly-gl2d.js +14 -9
- package/dist/plotly-gl2d.min.js +3 -3
- package/dist/plotly-gl3d.js +14 -9
- package/dist/plotly-gl3d.min.js +3 -3
- package/dist/plotly-mapbox.js +14 -9
- package/dist/plotly-mapbox.min.js +3 -3
- package/dist/plotly-strict.js +28 -16
- package/dist/plotly-strict.min.js +3 -3
- package/dist/plotly-with-meta.js +91 -91
- package/dist/plotly.js +28 -16
- package/dist/plotly.min.js +3 -3
- package/package.json +10 -10
- package/src/components/colorscale/attributes.js +46 -54
- package/src/components/modebar/manage.js +4 -1
- package/src/plot_api/plot_api.js +3 -1
- package/src/plots/geo/geo.js +1 -1
- package/src/plots/polar/polar.js +13 -6
- package/src/registry.js +1 -1
- package/src/traces/pointcloud/attributes.js +1 -1
- package/src/traces/sankey/attributes.js +2 -6
- package/src/traces/surface/attributes.js +10 -10
- package/src/traces/table/attributes.js +4 -4
- package/src/traces/violin/attributes.js +1 -1
- package/src/version.js +1 -1
package/dist/plotly-with-meta.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* plotly.js v2.12.
|
|
2
|
+
* plotly.js v2.12.1
|
|
3
3
|
* Copyright 2012-2022, Plotly, Inc.
|
|
4
4
|
* All rights reserved.
|
|
5
5
|
* Licensed under the MIT license
|
|
@@ -51,10 +51,10 @@ var rules = {
|
|
|
51
51
|
"X .modebar.vertical .modebar-group .modebar-btn": "display:block;text-align:center;",
|
|
52
52
|
"X [data-title]:before,X [data-title]:after": "position:absolute;-webkit-transform:translate3d(0, 0, 0);-moz-transform:translate3d(0, 0, 0);-ms-transform:translate3d(0, 0, 0);-o-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0);display:none;opacity:0;z-index:1001;pointer-events:none;top:110%;right:50%;",
|
|
53
53
|
"X [data-title]:hover:before,X [data-title]:hover:after": "display:block;opacity:1;",
|
|
54
|
-
"X [data-title]:before": "content:\"\";position:absolute;background:
|
|
54
|
+
"X [data-title]:before": "content:\"\";position:absolute;background:rgba(0,0,0,0);border:6px solid rgba(0,0,0,0);z-index:1002;margin-top:-12px;border-bottom-color:#69738a;margin-right:-6px;",
|
|
55
55
|
"X [data-title]:after": "content:attr(data-title);background:#69738a;color:#fff;padding:8px 10px;font-size:12px;line-height:12px;white-space:nowrap;margin-right:-18px;border-radius:2px;",
|
|
56
56
|
"X .vertical [data-title]:before,X .vertical [data-title]:after": "top:0%;right:200%;",
|
|
57
|
-
"X .vertical [data-title]:before": "border:6px solid
|
|
57
|
+
"X .vertical [data-title]:before": "border:6px solid rgba(0,0,0,0);border-left-color:#69738a;margin-top:8px;margin-right:-30px;",
|
|
58
58
|
"X .select-outline": "fill:none;stroke-width:1;shape-rendering:crispEdges;",
|
|
59
59
|
"X .select-outline-1": "stroke:#fff;",
|
|
60
60
|
"X .select-outline-2": "stroke:#000;stroke-dasharray:2px 2px;",
|
|
@@ -107687,7 +107687,7 @@ module.exports = function colorScaleAttrs(context, opts) {
|
|
|
107687
107687
|
}
|
|
107688
107688
|
|
|
107689
107689
|
var effectDesc = onlyIfNumerical ?
|
|
107690
|
-
' Has an effect only if ' + colorAttrFull + 'is set to a numerical array.' :
|
|
107690
|
+
' Has an effect only if ' + colorAttrFull + ' is set to a numerical array.' :
|
|
107691
107691
|
'';
|
|
107692
107692
|
|
|
107693
107693
|
var auto = cLetter + 'auto';
|
|
@@ -107712,11 +107712,11 @@ module.exports = function colorScaleAttrs(context, opts) {
|
|
|
107712
107712
|
editType: editTypeOverride || 'style',
|
|
107713
107713
|
description: [
|
|
107714
107714
|
'Sets the', context, 'color.',
|
|
107715
|
-
'
|
|
107716
|
-
'
|
|
107717
|
-
'
|
|
107718
|
-
|
|
107719
|
-
].join('')
|
|
107715
|
+
'It accepts either a specific color',
|
|
107716
|
+
'or an array of numbers that are mapped to the colorscale',
|
|
107717
|
+
'relative to the max and min values of the array or relative to',
|
|
107718
|
+
minmaxFull, 'if set.'
|
|
107719
|
+
].join(' ')
|
|
107720
107720
|
};
|
|
107721
107721
|
|
|
107722
107722
|
if(opts.anim) {
|
|
@@ -107731,11 +107731,10 @@ module.exports = function colorScaleAttrs(context, opts) {
|
|
|
107731
107731
|
impliedEdits: autoImpliedEdits,
|
|
107732
107732
|
description: [
|
|
107733
107733
|
'Determines whether or not the color domain is computed',
|
|
107734
|
-
'
|
|
107735
|
-
|
|
107736
|
-
' ',
|
|
107737
|
-
|
|
107738
|
-
].join('')
|
|
107734
|
+
'with respect to the input data (here ' + colorAttrFull + ') or the bounds set in',
|
|
107735
|
+
minmaxFull + effectDesc,
|
|
107736
|
+
'Defaults to `false` when', minmaxFull, 'are set by the user.'
|
|
107737
|
+
].join(' ')
|
|
107739
107738
|
};
|
|
107740
107739
|
|
|
107741
107740
|
attrs[min] = {
|
|
@@ -107744,11 +107743,10 @@ module.exports = function colorScaleAttrs(context, opts) {
|
|
|
107744
107743
|
editType: editTypeOverride || 'plot',
|
|
107745
107744
|
impliedEdits: minmaxImpliedEdits,
|
|
107746
107745
|
description: [
|
|
107747
|
-
'Sets the lower bound of the color domain.',
|
|
107748
|
-
|
|
107749
|
-
'
|
|
107750
|
-
|
|
107751
|
-
].join('')
|
|
107746
|
+
'Sets the lower bound of the color domain.' + effectDesc,
|
|
107747
|
+
'Value should have the same units as', colorAttrFull,
|
|
107748
|
+
'and if set,', maxFull, 'must be set as well.'
|
|
107749
|
+
].join(' ')
|
|
107752
107750
|
};
|
|
107753
107751
|
|
|
107754
107752
|
attrs[max] = {
|
|
@@ -107757,11 +107755,10 @@ module.exports = function colorScaleAttrs(context, opts) {
|
|
|
107757
107755
|
editType: editTypeOverride || 'plot',
|
|
107758
107756
|
impliedEdits: minmaxImpliedEdits,
|
|
107759
107757
|
description: [
|
|
107760
|
-
'Sets the upper bound of the color domain.',
|
|
107761
|
-
|
|
107762
|
-
'
|
|
107763
|
-
|
|
107764
|
-
].join('')
|
|
107758
|
+
'Sets the upper bound of the color domain.' + effectDesc,
|
|
107759
|
+
'Value should have the same units as', colorAttrFull,
|
|
107760
|
+
'and if set,', minFull, 'must be set as well.'
|
|
107761
|
+
].join(' ')
|
|
107765
107762
|
};
|
|
107766
107763
|
|
|
107767
107764
|
attrs[mid] = {
|
|
@@ -107770,12 +107767,11 @@ module.exports = function colorScaleAttrs(context, opts) {
|
|
|
107770
107767
|
editType: 'calc',
|
|
107771
107768
|
impliedEdits: autoImpliedEdits,
|
|
107772
107769
|
description: [
|
|
107773
|
-
'Sets the mid-point of the color domain by scaling
|
|
107774
|
-
'
|
|
107775
|
-
|
|
107776
|
-
'
|
|
107777
|
-
|
|
107778
|
-
].join('')
|
|
107770
|
+
'Sets the mid-point of the color domain by scaling', minFull,
|
|
107771
|
+
'and/or', maxFull, 'to be equidistant to this point.' + effectDesc,
|
|
107772
|
+
'Value should have the same units as', colorAttrFull + '.',
|
|
107773
|
+
'Has no effect when', autoFull, 'is `false`.'
|
|
107774
|
+
].join(' ')
|
|
107779
107775
|
};
|
|
107780
107776
|
|
|
107781
107777
|
attrs.colorscale = {
|
|
@@ -107784,19 +107780,18 @@ module.exports = function colorScaleAttrs(context, opts) {
|
|
|
107784
107780
|
dflt: colorscaleDflt,
|
|
107785
107781
|
impliedEdits: {autocolorscale: false},
|
|
107786
107782
|
description: [
|
|
107787
|
-
'Sets the colorscale.',
|
|
107788
|
-
|
|
107789
|
-
'
|
|
107790
|
-
'
|
|
107791
|
-
'
|
|
107792
|
-
'
|
|
107793
|
-
'
|
|
107794
|
-
'
|
|
107795
|
-
'
|
|
107796
|
-
'
|
|
107797
|
-
'
|
|
107798
|
-
|
|
107799
|
-
].join('')
|
|
107783
|
+
'Sets the colorscale.' + effectDesc,
|
|
107784
|
+
'The colorscale must be an array containing',
|
|
107785
|
+
'arrays mapping a normalized value to an',
|
|
107786
|
+
'rgb, rgba, hex, hsl, hsv, or named color string.',
|
|
107787
|
+
'At minimum, a mapping for the lowest (0) and highest (1)',
|
|
107788
|
+
'values are required. For example,',
|
|
107789
|
+
'`[[0, \'rgb(0,0,255)\'], [1, \'rgb(255,0,0)\']]`.',
|
|
107790
|
+
'To control the bounds of the colorscale in color space,',
|
|
107791
|
+
'use', minmaxFull + '.',
|
|
107792
|
+
'Alternatively, `colorscale` may be a palette name string',
|
|
107793
|
+
'of the following list: ' + paletteStr + '.'
|
|
107794
|
+
].join(' ')
|
|
107800
107795
|
};
|
|
107801
107796
|
|
|
107802
107797
|
attrs.autocolorscale = {
|
|
@@ -107807,12 +107802,11 @@ module.exports = function colorScaleAttrs(context, opts) {
|
|
|
107807
107802
|
impliedEdits: {colorscale: undefined},
|
|
107808
107803
|
description: [
|
|
107809
107804
|
'Determines whether the colorscale is a default palette (`autocolorscale: true`)',
|
|
107810
|
-
'
|
|
107811
|
-
|
|
107812
|
-
'
|
|
107813
|
-
'
|
|
107814
|
-
|
|
107815
|
-
].join('')
|
|
107805
|
+
'or the palette determined by', code(contextHead + 'colorscale') + '.' + effectDesc,
|
|
107806
|
+
'In case `colorscale` is unspecified or `autocolorscale` is true, the default',
|
|
107807
|
+
'palette will be chosen according to whether numbers in the `color` array are',
|
|
107808
|
+
'all positive, all negative or mixed.'
|
|
107809
|
+
].join(' ')
|
|
107816
107810
|
};
|
|
107817
107811
|
|
|
107818
107812
|
attrs.reversescale = {
|
|
@@ -107820,11 +107814,10 @@ module.exports = function colorScaleAttrs(context, opts) {
|
|
|
107820
107814
|
dflt: false,
|
|
107821
107815
|
editType: 'plot',
|
|
107822
107816
|
description: [
|
|
107823
|
-
'Reverses the color mapping if true.',
|
|
107824
|
-
|
|
107825
|
-
'
|
|
107826
|
-
|
|
107827
|
-
].join('')
|
|
107817
|
+
'Reverses the color mapping if true.' + effectDesc,
|
|
107818
|
+
'If true,', minFull, 'will correspond to the last color',
|
|
107819
|
+
'in the array and', maxFull, 'will correspond to the first color.'
|
|
107820
|
+
].join(' ')
|
|
107828
107821
|
};
|
|
107829
107822
|
|
|
107830
107823
|
if(!noScale) {
|
|
@@ -107833,9 +107826,8 @@ module.exports = function colorScaleAttrs(context, opts) {
|
|
|
107833
107826
|
dflt: showScaleDflt,
|
|
107834
107827
|
editType: 'calc',
|
|
107835
107828
|
description: [
|
|
107836
|
-
'Determines whether or not a colorbar is displayed for this trace.'
|
|
107837
|
-
|
|
107838
|
-
].join('')
|
|
107829
|
+
'Determines whether or not a colorbar is displayed for this trace.' + effectDesc
|
|
107830
|
+
].join(' ')
|
|
107839
107831
|
};
|
|
107840
107832
|
|
|
107841
107833
|
attrs.colorbar = colorbarAttrs;
|
|
@@ -119006,6 +118998,7 @@ var isUnifiedHover = _dereq_('../fx/helpers').isUnifiedHover;
|
|
|
119006
118998
|
var createModeBar = _dereq_('./modebar');
|
|
119007
118999
|
var modeBarButtons = _dereq_('./buttons');
|
|
119008
119000
|
var DRAW_MODES = _dereq_('./constants').DRAW_MODES;
|
|
119001
|
+
var extendDeep = _dereq_('../../lib').extendDeep;
|
|
119009
119002
|
|
|
119010
119003
|
/**
|
|
119011
119004
|
* ModeBar wrapper around 'create' and 'update',
|
|
@@ -119328,7 +119321,9 @@ function appendButtonsToGroups(groups, buttons) {
|
|
|
119328
119321
|
}
|
|
119329
119322
|
|
|
119330
119323
|
// fill in custom buttons referring to default mode bar buttons
|
|
119331
|
-
function fillCustomButton(
|
|
119324
|
+
function fillCustomButton(originalModeBarButtons) {
|
|
119325
|
+
var customButtons = extendDeep([], originalModeBarButtons);
|
|
119326
|
+
|
|
119332
119327
|
for(var i = 0; i < customButtons.length; i++) {
|
|
119333
119328
|
var buttonGroup = customButtons[i];
|
|
119334
119329
|
|
|
@@ -119351,7 +119346,7 @@ function fillCustomButton(customButtons) {
|
|
|
119351
119346
|
return customButtons;
|
|
119352
119347
|
}
|
|
119353
119348
|
|
|
119354
|
-
},{"../../plots/cartesian/axis_ids":558,"../../registry":638,"../../traces/scatter/subtypes":952,"../fx/helpers":402,"./buttons":426,"./constants":427,"./modebar":431}],431:[function(_dereq_,module,exports){
|
|
119349
|
+
},{"../../lib":503,"../../plots/cartesian/axis_ids":558,"../../registry":638,"../../traces/scatter/subtypes":952,"../fx/helpers":402,"./buttons":426,"./constants":427,"./modebar":431}],431:[function(_dereq_,module,exports){
|
|
119355
119350
|
'use strict';
|
|
119356
119351
|
|
|
119357
119352
|
var d3 = _dereq_('@plotly/d3');
|
|
@@ -137950,7 +137945,9 @@ function _relayout(gd, aobj) {
|
|
|
137950
137945
|
if(parentFull.autorange) flags.calc = true;
|
|
137951
137946
|
else flags.plot = true;
|
|
137952
137947
|
} else {
|
|
137953
|
-
if(
|
|
137948
|
+
if(ai === 'dragmode' && ((vi === false && vOld !== false) || (vi !== false && vOld === false))) {
|
|
137949
|
+
flags.plot = true;
|
|
137950
|
+
} else if((fullLayout._has('scatter-like') && fullLayout._has('regl')) &&
|
|
137954
137951
|
(ai === 'dragmode' &&
|
|
137955
137952
|
(vi === 'lasso' || vi === 'select') &&
|
|
137956
137953
|
!(vOld === 'lasso' || vOld === 'select'))
|
|
@@ -157244,7 +157241,7 @@ proto.fetchTopojson = function() {
|
|
|
157244
157241
|
if(err.status === 404) {
|
|
157245
157242
|
return reject(new Error([
|
|
157246
157243
|
'plotly.js could not find topojson file at',
|
|
157247
|
-
topojsonPath
|
|
157244
|
+
topojsonPath + '.',
|
|
157248
157245
|
'Make sure the *topojsonURL* plot config option',
|
|
157249
157246
|
'is set properly.'
|
|
157250
157247
|
].join(' ')));
|
|
@@ -170492,7 +170489,7 @@ proto.updateHoverAndMainDrag = function(fullLayout) {
|
|
|
170492
170489
|
var scaleX;
|
|
170493
170490
|
var scaleY;
|
|
170494
170491
|
|
|
170495
|
-
var mainDrag = dragBox.makeDragger(layers, 'path', 'maindrag', 'crosshair');
|
|
170492
|
+
var mainDrag = dragBox.makeDragger(layers, 'path', 'maindrag', fullLayout.dragmode === false ? 'none' : 'crosshair');
|
|
170496
170493
|
|
|
170497
170494
|
d3.select(mainDrag)
|
|
170498
170495
|
.attr('d', _this.pathSubplot())
|
|
@@ -170842,6 +170839,9 @@ proto.updateRadialDrag = function(fullLayout, polarLayout, rngIndex) {
|
|
|
170842
170839
|
|
|
170843
170840
|
var radialDrag = dragBox.makeRectDragger(layers, className, 'crosshair', -bl2, -bl2, bl, bl);
|
|
170844
170841
|
var dragOpts = {element: radialDrag, gd: gd};
|
|
170842
|
+
if(fullLayout.dragmode === false) {
|
|
170843
|
+
dragOpts.dragmode = false;
|
|
170844
|
+
}
|
|
170845
170845
|
|
|
170846
170846
|
updateElement(d3.select(radialDrag), radialAxis.visible && innerRadius < radius, {
|
|
170847
170847
|
transform: strTranslate(tx, ty)
|
|
@@ -170984,13 +170984,17 @@ proto.updateAngularDrag = function(fullLayout) {
|
|
|
170984
170984
|
var cyy = _this.cyy;
|
|
170985
170985
|
var dbs = constants.angularDragBoxSize;
|
|
170986
170986
|
|
|
170987
|
-
var angularDrag = dragBox.makeDragger(layers, 'path', 'angulardrag', 'move');
|
|
170987
|
+
var angularDrag = dragBox.makeDragger(layers, 'path', 'angulardrag', fullLayout.dragmode === false ? 'none' : 'move');
|
|
170988
170988
|
var dragOpts = {element: angularDrag, gd: gd};
|
|
170989
170989
|
|
|
170990
|
-
|
|
170991
|
-
.
|
|
170992
|
-
|
|
170993
|
-
.
|
|
170990
|
+
if(fullLayout.dragmode === false) {
|
|
170991
|
+
dragOpts.dragmode = false;
|
|
170992
|
+
} else {
|
|
170993
|
+
d3.select(angularDrag)
|
|
170994
|
+
.attr('d', _this.pathAnnulus(radius, radius + dbs))
|
|
170995
|
+
.attr('transform', strTranslate(cx, cy))
|
|
170996
|
+
.call(setCursor, 'move');
|
|
170997
|
+
}
|
|
170994
170998
|
|
|
170995
170999
|
function xy2a(x, y) {
|
|
170996
171000
|
return Math.atan2(cyy + dbs - y, x - cxx - dbs);
|
|
@@ -173425,7 +173429,7 @@ function registerTraceModule(_module) {
|
|
|
173425
173429
|
// add `PlotlyGeoAssets` global to stash references to all fetched
|
|
173426
173430
|
// topojson / geojson data
|
|
173427
173431
|
if((bpmName === 'geo' || bpmName === 'mapbox') &&
|
|
173428
|
-
(
|
|
173432
|
+
(window.PlotlyGeoAssets === undefined)
|
|
173429
173433
|
) {
|
|
173430
173434
|
window.PlotlyGeoAssets = {topojson: {}};
|
|
173431
173435
|
}
|
|
@@ -207476,7 +207480,7 @@ module.exports = {
|
|
|
207476
207480
|
'Sets the marker fill color. It accepts a specific color.',
|
|
207477
207481
|
'If the color is not fully opaque and there are hundreds of thousands',
|
|
207478
207482
|
'of points, it may cause slower zooming and panning.'
|
|
207479
|
-
].join('')
|
|
207483
|
+
].join(' ')
|
|
207480
207484
|
},
|
|
207481
207485
|
opacity: {
|
|
207482
207486
|
valType: 'number',
|
|
@@ -208074,17 +208078,13 @@ var attrs = module.exports = overrideAll({
|
|
|
208074
208078
|
valType: 'number',
|
|
208075
208079
|
editType: 'calc',
|
|
208076
208080
|
dflt: 1,
|
|
208077
|
-
description:
|
|
208078
|
-
'Sets the upper bound of the color domain.'
|
|
208079
|
-
].join('')
|
|
208081
|
+
description: 'Sets the upper bound of the color domain.'
|
|
208080
208082
|
},
|
|
208081
208083
|
cmin: {
|
|
208082
208084
|
valType: 'number',
|
|
208083
208085
|
editType: 'calc',
|
|
208084
208086
|
dflt: 0,
|
|
208085
|
-
description:
|
|
208086
|
-
'Sets the lower bound of the color domain.'
|
|
208087
|
-
].join('')
|
|
208087
|
+
description: 'Sets the lower bound of the color domain.'
|
|
208088
208088
|
},
|
|
208089
208089
|
colorscale: extendFlat(colorAttributes().colorscale, {dflt: [[0, 'white'], [1, 'black']]})
|
|
208090
208090
|
}),
|
|
@@ -223718,16 +223718,16 @@ colorScaleAttrs('', {
|
|
|
223718
223718
|
editType: 'calc',
|
|
223719
223719
|
description: [
|
|
223720
223720
|
'Sets the opacityscale.',
|
|
223721
|
-
'
|
|
223722
|
-
'
|
|
223723
|
-
'
|
|
223724
|
-
'
|
|
223725
|
-
'
|
|
223726
|
-
'
|
|
223727
|
-
'
|
|
223728
|
-
'
|
|
223729
|
-
'
|
|
223730
|
-
].join('')
|
|
223721
|
+
'The opacityscale must be an array containing',
|
|
223722
|
+
'arrays mapping a normalized value to an opacity value.',
|
|
223723
|
+
'At minimum, a mapping for the lowest (0) and highest (1)',
|
|
223724
|
+
'values are required. For example,',
|
|
223725
|
+
'`[[0, 1], [0.5, 0.2], [1, 1]]` means that higher/lower values would have',
|
|
223726
|
+
'higher opacity values and those in the middle would be more transparent',
|
|
223727
|
+
'Alternatively, `opacityscale` may be a palette name string',
|
|
223728
|
+
'of the following list: \'min\', \'max\', \'extremes\' and \'uniform\'.',
|
|
223729
|
+
'The default is \'uniform\'.'
|
|
223730
|
+
].join(' ')
|
|
223731
223731
|
},
|
|
223732
223732
|
|
|
223733
223733
|
_deprecated: {
|
|
@@ -224759,8 +224759,8 @@ var attrs = module.exports = overrideAll({
|
|
|
224759
224759
|
dflt: 'white',
|
|
224760
224760
|
description: [
|
|
224761
224761
|
'Sets the cell fill color. It accepts either a specific color',
|
|
224762
|
-
'
|
|
224763
|
-
].join('')
|
|
224762
|
+
'or an array of colors or a 2D array of colors.'
|
|
224763
|
+
].join(' ')
|
|
224764
224764
|
}
|
|
224765
224765
|
},
|
|
224766
224766
|
|
|
@@ -224827,8 +224827,8 @@ var attrs = module.exports = overrideAll({
|
|
|
224827
224827
|
dflt: 'white',
|
|
224828
224828
|
description: [
|
|
224829
224829
|
'Sets the cell fill color. It accepts either a specific color',
|
|
224830
|
-
'
|
|
224831
|
-
].join('')
|
|
224830
|
+
'or an array of colors or a 2D array of colors.'
|
|
224831
|
+
].join(' ')
|
|
224832
224832
|
}
|
|
224833
224833
|
},
|
|
224834
224834
|
|
|
@@ -227973,7 +227973,7 @@ module.exports = {
|
|
|
227973
227973
|
'*width* means each violin has the same (max) width',
|
|
227974
227974
|
'*count* means the violins are scaled by the number of sample points making',
|
|
227975
227975
|
'up each violin.'
|
|
227976
|
-
].join('')
|
|
227976
|
+
].join(' ')
|
|
227977
227977
|
},
|
|
227978
227978
|
|
|
227979
227979
|
spanmode: {
|
|
@@ -231207,7 +231207,7 @@ function getSortFunc(opts, d2c) {
|
|
|
231207
231207
|
'use strict';
|
|
231208
231208
|
|
|
231209
231209
|
// package version injected by `npm run preprocess`
|
|
231210
|
-
exports.version = '2.12.
|
|
231210
|
+
exports.version = '2.12.1';
|
|
231211
231211
|
|
|
231212
231212
|
},{}],1124:[function(_dereq_,module,exports){
|
|
231213
231213
|
(function (global){(function (){
|
package/dist/plotly.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* plotly.js v2.12.
|
|
2
|
+
* plotly.js v2.12.1
|
|
3
3
|
* Copyright 2012-2022, Plotly, Inc.
|
|
4
4
|
* All rights reserved.
|
|
5
5
|
* Licensed under the MIT license
|
|
@@ -51,10 +51,10 @@ var rules = {
|
|
|
51
51
|
"X .modebar.vertical .modebar-group .modebar-btn": "display:block;text-align:center;",
|
|
52
52
|
"X [data-title]:before,X [data-title]:after": "position:absolute;-webkit-transform:translate3d(0, 0, 0);-moz-transform:translate3d(0, 0, 0);-ms-transform:translate3d(0, 0, 0);-o-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0);display:none;opacity:0;z-index:1001;pointer-events:none;top:110%;right:50%;",
|
|
53
53
|
"X [data-title]:hover:before,X [data-title]:hover:after": "display:block;opacity:1;",
|
|
54
|
-
"X [data-title]:before": "content:\"\";position:absolute;background:
|
|
54
|
+
"X [data-title]:before": "content:\"\";position:absolute;background:rgba(0,0,0,0);border:6px solid rgba(0,0,0,0);z-index:1002;margin-top:-12px;border-bottom-color:#69738a;margin-right:-6px;",
|
|
55
55
|
"X [data-title]:after": "content:attr(data-title);background:#69738a;color:#fff;padding:8px 10px;font-size:12px;line-height:12px;white-space:nowrap;margin-right:-18px;border-radius:2px;",
|
|
56
56
|
"X .vertical [data-title]:before,X .vertical [data-title]:after": "top:0%;right:200%;",
|
|
57
|
-
"X .vertical [data-title]:before": "border:6px solid
|
|
57
|
+
"X .vertical [data-title]:before": "border:6px solid rgba(0,0,0,0);border-left-color:#69738a;margin-top:8px;margin-right:-30px;",
|
|
58
58
|
"X .select-outline": "fill:none;stroke-width:1;shape-rendering:crispEdges;",
|
|
59
59
|
"X .select-outline-1": "stroke:#fff;",
|
|
60
60
|
"X .select-outline-2": "stroke:#000;stroke-dasharray:2px 2px;",
|
|
@@ -107368,7 +107368,7 @@ module.exports = function colorScaleAttrs(context, opts) {
|
|
|
107368
107368
|
}
|
|
107369
107369
|
|
|
107370
107370
|
var effectDesc = onlyIfNumerical ?
|
|
107371
|
-
' Has an effect only if ' + colorAttrFull + 'is set to a numerical array.' :
|
|
107371
|
+
' Has an effect only if ' + colorAttrFull + ' is set to a numerical array.' :
|
|
107372
107372
|
'';
|
|
107373
107373
|
|
|
107374
107374
|
var auto = cLetter + 'auto';
|
|
@@ -118176,6 +118176,7 @@ var isUnifiedHover = _dereq_('../fx/helpers').isUnifiedHover;
|
|
|
118176
118176
|
var createModeBar = _dereq_('./modebar');
|
|
118177
118177
|
var modeBarButtons = _dereq_('./buttons');
|
|
118178
118178
|
var DRAW_MODES = _dereq_('./constants').DRAW_MODES;
|
|
118179
|
+
var extendDeep = _dereq_('../../lib').extendDeep;
|
|
118179
118180
|
|
|
118180
118181
|
/**
|
|
118181
118182
|
* ModeBar wrapper around 'create' and 'update',
|
|
@@ -118498,7 +118499,9 @@ function appendButtonsToGroups(groups, buttons) {
|
|
|
118498
118499
|
}
|
|
118499
118500
|
|
|
118500
118501
|
// fill in custom buttons referring to default mode bar buttons
|
|
118501
|
-
function fillCustomButton(
|
|
118502
|
+
function fillCustomButton(originalModeBarButtons) {
|
|
118503
|
+
var customButtons = extendDeep([], originalModeBarButtons);
|
|
118504
|
+
|
|
118502
118505
|
for(var i = 0; i < customButtons.length; i++) {
|
|
118503
118506
|
var buttonGroup = customButtons[i];
|
|
118504
118507
|
|
|
@@ -118521,7 +118524,7 @@ function fillCustomButton(customButtons) {
|
|
|
118521
118524
|
return customButtons;
|
|
118522
118525
|
}
|
|
118523
118526
|
|
|
118524
|
-
},{"../../plots/cartesian/axis_ids":558,"../../registry":638,"../../traces/scatter/subtypes":952,"../fx/helpers":402,"./buttons":426,"./constants":427,"./modebar":431}],431:[function(_dereq_,module,exports){
|
|
118527
|
+
},{"../../lib":503,"../../plots/cartesian/axis_ids":558,"../../registry":638,"../../traces/scatter/subtypes":952,"../fx/helpers":402,"./buttons":426,"./constants":427,"./modebar":431}],431:[function(_dereq_,module,exports){
|
|
118525
118528
|
'use strict';
|
|
118526
118529
|
|
|
118527
118530
|
var d3 = _dereq_('@plotly/d3');
|
|
@@ -136613,7 +136616,9 @@ function _relayout(gd, aobj) {
|
|
|
136613
136616
|
if(parentFull.autorange) flags.calc = true;
|
|
136614
136617
|
else flags.plot = true;
|
|
136615
136618
|
} else {
|
|
136616
|
-
if(
|
|
136619
|
+
if(ai === 'dragmode' && ((vi === false && vOld !== false) || (vi !== false && vOld === false))) {
|
|
136620
|
+
flags.plot = true;
|
|
136621
|
+
} else if((fullLayout._has('scatter-like') && fullLayout._has('regl')) &&
|
|
136617
136622
|
(ai === 'dragmode' &&
|
|
136618
136623
|
(vi === 'lasso' || vi === 'select') &&
|
|
136619
136624
|
!(vOld === 'lasso' || vOld === 'select'))
|
|
@@ -154951,7 +154956,7 @@ proto.fetchTopojson = function() {
|
|
|
154951
154956
|
if(err.status === 404) {
|
|
154952
154957
|
return reject(new Error([
|
|
154953
154958
|
'plotly.js could not find topojson file at',
|
|
154954
|
-
topojsonPath
|
|
154959
|
+
topojsonPath + '.',
|
|
154955
154960
|
'Make sure the *topojsonURL* plot config option',
|
|
154956
154961
|
'is set properly.'
|
|
154957
154962
|
].join(' ')));
|
|
@@ -167549,7 +167554,7 @@ proto.updateHoverAndMainDrag = function(fullLayout) {
|
|
|
167549
167554
|
var scaleX;
|
|
167550
167555
|
var scaleY;
|
|
167551
167556
|
|
|
167552
|
-
var mainDrag = dragBox.makeDragger(layers, 'path', 'maindrag', 'crosshair');
|
|
167557
|
+
var mainDrag = dragBox.makeDragger(layers, 'path', 'maindrag', fullLayout.dragmode === false ? 'none' : 'crosshair');
|
|
167553
167558
|
|
|
167554
167559
|
d3.select(mainDrag)
|
|
167555
167560
|
.attr('d', _this.pathSubplot())
|
|
@@ -167899,6 +167904,9 @@ proto.updateRadialDrag = function(fullLayout, polarLayout, rngIndex) {
|
|
|
167899
167904
|
|
|
167900
167905
|
var radialDrag = dragBox.makeRectDragger(layers, className, 'crosshair', -bl2, -bl2, bl, bl);
|
|
167901
167906
|
var dragOpts = {element: radialDrag, gd: gd};
|
|
167907
|
+
if(fullLayout.dragmode === false) {
|
|
167908
|
+
dragOpts.dragmode = false;
|
|
167909
|
+
}
|
|
167902
167910
|
|
|
167903
167911
|
updateElement(d3.select(radialDrag), radialAxis.visible && innerRadius < radius, {
|
|
167904
167912
|
transform: strTranslate(tx, ty)
|
|
@@ -168041,13 +168049,17 @@ proto.updateAngularDrag = function(fullLayout) {
|
|
|
168041
168049
|
var cyy = _this.cyy;
|
|
168042
168050
|
var dbs = constants.angularDragBoxSize;
|
|
168043
168051
|
|
|
168044
|
-
var angularDrag = dragBox.makeDragger(layers, 'path', 'angulardrag', 'move');
|
|
168052
|
+
var angularDrag = dragBox.makeDragger(layers, 'path', 'angulardrag', fullLayout.dragmode === false ? 'none' : 'move');
|
|
168045
168053
|
var dragOpts = {element: angularDrag, gd: gd};
|
|
168046
168054
|
|
|
168047
|
-
|
|
168048
|
-
.
|
|
168049
|
-
|
|
168050
|
-
.
|
|
168055
|
+
if(fullLayout.dragmode === false) {
|
|
168056
|
+
dragOpts.dragmode = false;
|
|
168057
|
+
} else {
|
|
168058
|
+
d3.select(angularDrag)
|
|
168059
|
+
.attr('d', _this.pathAnnulus(radius, radius + dbs))
|
|
168060
|
+
.attr('transform', strTranslate(cx, cy))
|
|
168061
|
+
.call(setCursor, 'move');
|
|
168062
|
+
}
|
|
168051
168063
|
|
|
168052
168064
|
function xy2a(x, y) {
|
|
168053
168065
|
return Math.atan2(cyy + dbs - y, x - cxx - dbs);
|
|
@@ -170416,7 +170428,7 @@ function registerTraceModule(_module) {
|
|
|
170416
170428
|
// add `PlotlyGeoAssets` global to stash references to all fetched
|
|
170417
170429
|
// topojson / geojson data
|
|
170418
170430
|
if((bpmName === 'geo' || bpmName === 'mapbox') &&
|
|
170419
|
-
(
|
|
170431
|
+
(window.PlotlyGeoAssets === undefined)
|
|
170420
170432
|
) {
|
|
170421
170433
|
window.PlotlyGeoAssets = {topojson: {}};
|
|
170422
170434
|
}
|
|
@@ -224766,7 +224778,7 @@ function getSortFunc(opts, d2c) {
|
|
|
224766
224778
|
'use strict';
|
|
224767
224779
|
|
|
224768
224780
|
// package version injected by `npm run preprocess`
|
|
224769
|
-
exports.version = '2.12.
|
|
224781
|
+
exports.version = '2.12.1';
|
|
224770
224782
|
|
|
224771
224783
|
},{}],1124:[function(_dereq_,module,exports){
|
|
224772
224784
|
(function (global){(function (){
|