plotly.js 2.9.0 → 2.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.circleci/config.yml +39 -1
- package/.circleci/test.sh +14 -1
- package/CHANGELOG.md +11 -1
- package/CONTRIBUTING.md +1 -1
- package/README.md +12 -4
- package/dist/README.md +26 -26
- package/dist/plot-schema.json +98 -0
- package/dist/plotly-basic.js +174 -83
- package/dist/plotly-basic.min.js +3 -3
- package/dist/plotly-cartesian.js +174 -83
- package/dist/plotly-cartesian.min.js +4 -4
- package/dist/plotly-finance.js +174 -83
- package/dist/plotly-finance.min.js +3 -3
- package/dist/plotly-geo-assets.js +2 -2
- package/dist/plotly-geo.js +174 -83
- package/dist/plotly-geo.min.js +3 -3
- package/dist/plotly-gl2d.js +174 -83
- package/dist/plotly-gl2d.min.js +6 -6
- package/dist/plotly-gl3d.js +174 -83
- package/dist/plotly-gl3d.min.js +8 -8
- package/dist/plotly-mapbox.js +174 -83
- package/dist/plotly-mapbox.min.js +2 -2
- package/dist/plotly-strict.js +174 -83
- package/dist/plotly-strict.min.js +6 -6
- package/dist/plotly-with-meta.js +178 -83
- package/dist/plotly.js +174 -83
- package/dist/plotly.min.js +2 -2
- package/package.json +6 -3
- package/src/components/drawing/index.js +28 -24
- package/src/components/legend/style.js +10 -6
- package/src/lib/svg_text_utils.js +106 -21
- package/src/plot_api/plot_config.js +9 -0
- package/src/snapshot/tosvg.js +14 -25
- package/src/traces/scatter/attributes.js +2 -0
- package/src/traces/scatter/defaults.js +2 -0
- package/src/traces/scatter/plot.js +4 -4
- package/src/traces/scatter/style.js +1 -1
- package/src/version.js +1 -1
- package/tasks/noci_test.sh +1 -1
package/dist/plotly-gl3d.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* plotly.js (gl3d) v2.
|
|
2
|
+
* plotly.js (gl3d) v2.10.0
|
|
3
3
|
* Copyright 2012-2022, Plotly, Inc.
|
|
4
4
|
* All rights reserved.
|
|
5
5
|
* Licensed under the MIT license
|
|
@@ -25180,24 +25180,42 @@ drawing.dashStyle = function(dash, lineWidth) {
|
|
|
25180
25180
|
return dash;
|
|
25181
25181
|
};
|
|
25182
25182
|
|
|
25183
|
+
function setFillStyle(sel, trace, gd) {
|
|
25184
|
+
var markerPattern = trace.fillpattern;
|
|
25185
|
+
var patternShape = markerPattern && drawing.getPatternAttr(markerPattern.shape, 0, '');
|
|
25186
|
+
if(patternShape) {
|
|
25187
|
+
var patternBGColor = drawing.getPatternAttr(markerPattern.bgcolor, 0, null);
|
|
25188
|
+
var patternFGColor = drawing.getPatternAttr(markerPattern.fgcolor, 0, null);
|
|
25189
|
+
var patternFGOpacity = markerPattern.fgopacity;
|
|
25190
|
+
var patternSize = drawing.getPatternAttr(markerPattern.size, 0, 8);
|
|
25191
|
+
var patternSolidity = drawing.getPatternAttr(markerPattern.solidity, 0, 0.3);
|
|
25192
|
+
var patternID = trace.uid;
|
|
25193
|
+
drawing.pattern(sel, 'point', gd, patternID,
|
|
25194
|
+
patternShape, patternSize, patternSolidity,
|
|
25195
|
+
undefined, markerPattern.fillmode,
|
|
25196
|
+
patternBGColor, patternFGColor, patternFGOpacity
|
|
25197
|
+
);
|
|
25198
|
+
} else if(trace.fillcolor) {
|
|
25199
|
+
sel.call(Color.fill, trace.fillcolor);
|
|
25200
|
+
}
|
|
25201
|
+
}
|
|
25202
|
+
|
|
25183
25203
|
// Same as fillGroupStyle, except in this case the selection may be a transition
|
|
25184
|
-
drawing.singleFillStyle = function(sel) {
|
|
25204
|
+
drawing.singleFillStyle = function(sel, gd) {
|
|
25185
25205
|
var node = d3.select(sel.node());
|
|
25186
25206
|
var data = node.data();
|
|
25187
|
-
var
|
|
25188
|
-
|
|
25189
|
-
sel.call(Color.fill, fillcolor);
|
|
25190
|
-
}
|
|
25207
|
+
var trace = ((data[0] || [])[0] || {}).trace || {};
|
|
25208
|
+
setFillStyle(sel, trace, gd);
|
|
25191
25209
|
};
|
|
25192
25210
|
|
|
25193
|
-
drawing.fillGroupStyle = function(s) {
|
|
25211
|
+
drawing.fillGroupStyle = function(s, gd) {
|
|
25194
25212
|
s.style('stroke-width', 0)
|
|
25195
25213
|
.each(function(d) {
|
|
25196
25214
|
var shape = d3.select(this);
|
|
25197
25215
|
// N.B. 'd' won't be a calcdata item when
|
|
25198
25216
|
// fill !== 'none' on a segment-less and marker-less trace
|
|
25199
25217
|
if(d[0].trace) {
|
|
25200
|
-
shape
|
|
25218
|
+
setFillStyle(shape, d[0].trace, gd);
|
|
25201
25219
|
}
|
|
25202
25220
|
});
|
|
25203
25221
|
};
|
|
@@ -25350,12 +25368,7 @@ drawing.gradient = function(sel, gd, gradientID, type, colorscale, prop) {
|
|
|
25350
25368
|
sel.style(prop, getFullUrl(fullID, gd))
|
|
25351
25369
|
.style(prop + '-opacity', null);
|
|
25352
25370
|
|
|
25353
|
-
|
|
25354
|
-
return '.' + s.attr('class').replace(/\s/g, '.');
|
|
25355
|
-
};
|
|
25356
|
-
var k = className2query(d3.select(sel.node().parentNode)) +
|
|
25357
|
-
'>' + className2query(sel);
|
|
25358
|
-
fullLayout._gradientUrlQueryParts[k] = 1;
|
|
25371
|
+
sel.classed('gradient_filled', true);
|
|
25359
25372
|
};
|
|
25360
25373
|
|
|
25361
25374
|
/**
|
|
@@ -25562,11 +25575,6 @@ drawing.pattern = function(sel, calledBy, gd, patternID, shape, size, solidity,
|
|
|
25562
25575
|
.style('fill-opacity', null);
|
|
25563
25576
|
|
|
25564
25577
|
sel.classed('pattern_filled', true);
|
|
25565
|
-
var className2query = function(s) {
|
|
25566
|
-
return '.' + s.attr('class').replace(/\s/g, '.');
|
|
25567
|
-
};
|
|
25568
|
-
var k = className2query(d3.select(sel.node().parentNode)) + '>.pattern_filled';
|
|
25569
|
-
fullLayout._patternUrlQueryParts[k] = 1;
|
|
25570
25578
|
};
|
|
25571
25579
|
|
|
25572
25580
|
/*
|
|
@@ -25582,9 +25590,7 @@ drawing.initGradients = function(gd) {
|
|
|
25582
25590
|
var gradientsGroup = Lib.ensureSingle(fullLayout._defs, 'g', 'gradients');
|
|
25583
25591
|
gradientsGroup.selectAll('linearGradient,radialGradient').remove();
|
|
25584
25592
|
|
|
25585
|
-
|
|
25586
|
-
// used to fix URL strings during image exports
|
|
25587
|
-
fullLayout._gradientUrlQueryParts = {};
|
|
25593
|
+
d3.select(gd).selectAll('.gradient_filled').classed('gradient_filled', false);
|
|
25588
25594
|
};
|
|
25589
25595
|
|
|
25590
25596
|
drawing.initPatterns = function(gd) {
|
|
@@ -25593,9 +25599,7 @@ drawing.initPatterns = function(gd) {
|
|
|
25593
25599
|
var patternsGroup = Lib.ensureSingle(fullLayout._defs, 'g', 'patterns');
|
|
25594
25600
|
patternsGroup.selectAll('pattern').remove();
|
|
25595
25601
|
|
|
25596
|
-
|
|
25597
|
-
// used to fix URL strings during image exports
|
|
25598
|
-
fullLayout._patternUrlQueryParts = {};
|
|
25602
|
+
d3.select(gd).selectAll('.pattern_filled').classed('pattern_filled', false);
|
|
25599
25603
|
};
|
|
25600
25604
|
|
|
25601
25605
|
drawing.getPatternAttr = function(mp, i, dflt) {
|
|
@@ -32932,12 +32936,16 @@ module.exports = function style(s, gd, legend) {
|
|
|
32932
32936
|
var colorscale = cOpts.colorscale;
|
|
32933
32937
|
var reversescale = cOpts.reversescale;
|
|
32934
32938
|
|
|
32935
|
-
var
|
|
32939
|
+
var fillStyle = function(s) {
|
|
32936
32940
|
if(s.size()) {
|
|
32937
|
-
|
|
32938
|
-
|
|
32939
|
-
|
|
32940
|
-
|
|
32941
|
+
if(showFill) {
|
|
32942
|
+
Drawing.fillGroupStyle(s, gd);
|
|
32943
|
+
} else {
|
|
32944
|
+
var gradientID = 'legendfill-' + trace.uid;
|
|
32945
|
+
Drawing.gradient(s, gd, gradientID,
|
|
32946
|
+
getGradientDirection(reversescale),
|
|
32947
|
+
colorscale, 'fill');
|
|
32948
|
+
}
|
|
32941
32949
|
}
|
|
32942
32950
|
};
|
|
32943
32951
|
|
|
@@ -32966,7 +32974,7 @@ module.exports = function style(s, gd, legend) {
|
|
|
32966
32974
|
fill.enter().append('path').classed('js-fill', true);
|
|
32967
32975
|
fill.exit().remove();
|
|
32968
32976
|
fill.attr('d', pathStart + 'h' + itemWidth + 'v6h-' + itemWidth + 'z')
|
|
32969
|
-
.call(
|
|
32977
|
+
.call(fillStyle);
|
|
32970
32978
|
|
|
32971
32979
|
if(showLine || showGradientLine) {
|
|
32972
32980
|
var lw = boundLineWidth(undefined, trace.line, MAX_LINE_WIDTH, CST_LINE_WIDTH);
|
|
@@ -47779,6 +47787,7 @@ exports.convertToTspans = function(_context, gd, _callback) {
|
|
|
47779
47787
|
// Until we get tex integrated more fully (so it can be used along with non-tex)
|
|
47780
47788
|
// allow some elements to prohibit it by attaching 'data-notex' to the original
|
|
47781
47789
|
var tex = (!_context.attr('data-notex')) &&
|
|
47790
|
+
gd && gd._context.typesetMath &&
|
|
47782
47791
|
(typeof MathJax !== 'undefined') &&
|
|
47783
47792
|
str.match(FIND_TEX);
|
|
47784
47793
|
|
|
@@ -47933,70 +47942,154 @@ function cleanEscapesForTex(s) {
|
|
|
47933
47942
|
.replace(GT_MATCH, '\\gt ');
|
|
47934
47943
|
}
|
|
47935
47944
|
|
|
47945
|
+
var inlineMath = [['$', '$'], ['\\(', '\\)']];
|
|
47946
|
+
|
|
47936
47947
|
function texToSVG(_texString, _config, _callback) {
|
|
47948
|
+
var MathJaxVersion = parseInt(
|
|
47949
|
+
(MathJax.version || '').split('.')[0]
|
|
47950
|
+
);
|
|
47951
|
+
|
|
47952
|
+
if(
|
|
47953
|
+
MathJaxVersion !== 2 &&
|
|
47954
|
+
MathJaxVersion !== 3
|
|
47955
|
+
) {
|
|
47956
|
+
Lib.warn('No MathJax version:', MathJax.version);
|
|
47957
|
+
return;
|
|
47958
|
+
}
|
|
47959
|
+
|
|
47937
47960
|
var originalRenderer,
|
|
47938
47961
|
originalConfig,
|
|
47939
47962
|
originalProcessSectionDelay,
|
|
47940
47963
|
tmpDiv;
|
|
47941
47964
|
|
|
47942
|
-
|
|
47943
|
-
function() {
|
|
47965
|
+
var setConfig2 = function() {
|
|
47944
47966
|
originalConfig = Lib.extendDeepAll({}, MathJax.Hub.config);
|
|
47945
47967
|
|
|
47946
47968
|
originalProcessSectionDelay = MathJax.Hub.processSectionDelay;
|
|
47947
47969
|
if(MathJax.Hub.processSectionDelay !== undefined) {
|
|
47948
|
-
// MathJax 2.5+
|
|
47970
|
+
// MathJax 2.5+ but not 3+
|
|
47949
47971
|
MathJax.Hub.processSectionDelay = 0;
|
|
47950
47972
|
}
|
|
47951
47973
|
|
|
47952
47974
|
return MathJax.Hub.Config({
|
|
47953
47975
|
messageStyle: 'none',
|
|
47954
47976
|
tex2jax: {
|
|
47955
|
-
inlineMath:
|
|
47977
|
+
inlineMath: inlineMath
|
|
47956
47978
|
},
|
|
47957
47979
|
displayAlign: 'left',
|
|
47958
47980
|
});
|
|
47959
|
-
}
|
|
47960
|
-
|
|
47961
|
-
|
|
47981
|
+
};
|
|
47982
|
+
|
|
47983
|
+
var setConfig3 = function() {
|
|
47984
|
+
originalConfig = Lib.extendDeepAll({}, MathJax.config);
|
|
47985
|
+
|
|
47986
|
+
if(!MathJax.config.tex) {
|
|
47987
|
+
MathJax.config.tex = {};
|
|
47988
|
+
}
|
|
47989
|
+
|
|
47990
|
+
MathJax.config.tex.inlineMath = inlineMath;
|
|
47991
|
+
};
|
|
47992
|
+
|
|
47993
|
+
var setRenderer2 = function() {
|
|
47962
47994
|
originalRenderer = MathJax.Hub.config.menuSettings.renderer;
|
|
47963
47995
|
if(originalRenderer !== 'SVG') {
|
|
47964
47996
|
return MathJax.Hub.setRenderer('SVG');
|
|
47965
47997
|
}
|
|
47966
|
-
}
|
|
47967
|
-
|
|
47998
|
+
};
|
|
47999
|
+
|
|
48000
|
+
var setRenderer3 = function() {
|
|
48001
|
+
originalRenderer = MathJax.config.startup.output;
|
|
48002
|
+
if(originalRenderer !== 'svg') {
|
|
48003
|
+
MathJax.config.startup.output = 'svg';
|
|
48004
|
+
}
|
|
48005
|
+
};
|
|
48006
|
+
|
|
48007
|
+
var initiateMathJax = function() {
|
|
47968
48008
|
var randomID = 'math-output-' + Lib.randstr({}, 64);
|
|
47969
48009
|
tmpDiv = d3.select('body').append('div')
|
|
47970
48010
|
.attr({id: randomID})
|
|
47971
|
-
.style({
|
|
47972
|
-
|
|
48011
|
+
.style({
|
|
48012
|
+
visibility: 'hidden',
|
|
48013
|
+
position: 'absolute',
|
|
48014
|
+
'font-size': _config.fontSize + 'px'
|
|
48015
|
+
})
|
|
47973
48016
|
.text(cleanEscapesForTex(_texString));
|
|
47974
48017
|
|
|
47975
|
-
|
|
47976
|
-
},
|
|
47977
|
-
function() {
|
|
47978
|
-
var glyphDefs = d3.select('body').select('#MathJax_SVG_glyphs');
|
|
48018
|
+
var tmpNode = tmpDiv.node();
|
|
47979
48019
|
|
|
47980
|
-
|
|
48020
|
+
return MathJaxVersion === 2 ?
|
|
48021
|
+
MathJax.Hub.Typeset(tmpNode) :
|
|
48022
|
+
MathJax.typeset([tmpNode]);
|
|
48023
|
+
};
|
|
48024
|
+
|
|
48025
|
+
var finalizeMathJax = function() {
|
|
48026
|
+
var sel = tmpDiv.select(
|
|
48027
|
+
MathJaxVersion === 2 ? '.MathJax_SVG' : '.MathJax'
|
|
48028
|
+
);
|
|
48029
|
+
|
|
48030
|
+
var node = !sel.empty() && tmpDiv.select('svg').node();
|
|
48031
|
+
if(!node) {
|
|
47981
48032
|
Lib.log('There was an error in the tex syntax.', _texString);
|
|
47982
48033
|
_callback();
|
|
47983
48034
|
} else {
|
|
47984
|
-
var
|
|
47985
|
-
|
|
48035
|
+
var nodeBBox = node.getBoundingClientRect();
|
|
48036
|
+
var glyphDefs;
|
|
48037
|
+
if(MathJaxVersion === 2) {
|
|
48038
|
+
glyphDefs = d3.select('body').select('#MathJax_SVG_glyphs');
|
|
48039
|
+
} else {
|
|
48040
|
+
glyphDefs = sel.select('defs');
|
|
48041
|
+
}
|
|
48042
|
+
_callback(sel, glyphDefs, nodeBBox);
|
|
47986
48043
|
}
|
|
47987
48044
|
|
|
47988
48045
|
tmpDiv.remove();
|
|
48046
|
+
};
|
|
47989
48047
|
|
|
48048
|
+
var resetRenderer2 = function() {
|
|
47990
48049
|
if(originalRenderer !== 'SVG') {
|
|
47991
48050
|
return MathJax.Hub.setRenderer(originalRenderer);
|
|
47992
48051
|
}
|
|
47993
|
-
}
|
|
47994
|
-
|
|
48052
|
+
};
|
|
48053
|
+
|
|
48054
|
+
var resetRenderer3 = function() {
|
|
48055
|
+
if(originalRenderer !== 'svg') {
|
|
48056
|
+
MathJax.config.startup.output = originalRenderer;
|
|
48057
|
+
}
|
|
48058
|
+
};
|
|
48059
|
+
|
|
48060
|
+
var resetConfig2 = function() {
|
|
47995
48061
|
if(originalProcessSectionDelay !== undefined) {
|
|
47996
48062
|
MathJax.Hub.processSectionDelay = originalProcessSectionDelay;
|
|
47997
48063
|
}
|
|
47998
48064
|
return MathJax.Hub.Config(originalConfig);
|
|
47999
|
-
}
|
|
48065
|
+
};
|
|
48066
|
+
|
|
48067
|
+
var resetConfig3 = function() {
|
|
48068
|
+
MathJax.config = originalConfig;
|
|
48069
|
+
};
|
|
48070
|
+
|
|
48071
|
+
if(MathJaxVersion === 2) {
|
|
48072
|
+
MathJax.Hub.Queue(
|
|
48073
|
+
setConfig2,
|
|
48074
|
+
setRenderer2,
|
|
48075
|
+
initiateMathJax,
|
|
48076
|
+
finalizeMathJax,
|
|
48077
|
+
resetRenderer2,
|
|
48078
|
+
resetConfig2
|
|
48079
|
+
);
|
|
48080
|
+
} else if(MathJaxVersion === 3) {
|
|
48081
|
+
setConfig3();
|
|
48082
|
+
setRenderer3();
|
|
48083
|
+
MathJax.startup.defaultReady();
|
|
48084
|
+
|
|
48085
|
+
MathJax.startup.promise.then(function() {
|
|
48086
|
+
initiateMathJax();
|
|
48087
|
+
finalizeMathJax();
|
|
48088
|
+
|
|
48089
|
+
resetRenderer3();
|
|
48090
|
+
resetConfig3();
|
|
48091
|
+
});
|
|
48092
|
+
}
|
|
48000
48093
|
}
|
|
48001
48094
|
|
|
48002
48095
|
var TAG_STYLES = {
|
|
@@ -53816,6 +53909,11 @@ var configAttributes = {
|
|
|
53816
53909
|
dflt: false,
|
|
53817
53910
|
},
|
|
53818
53911
|
|
|
53912
|
+
typesetMath: {
|
|
53913
|
+
valType: 'boolean',
|
|
53914
|
+
dflt: true,
|
|
53915
|
+
},
|
|
53916
|
+
|
|
53819
53917
|
plotlyServerURL: {
|
|
53820
53918
|
valType: 'string',
|
|
53821
53919
|
dflt: '',
|
|
@@ -76713,7 +76811,7 @@ module.exports = function toSVG(gd, format, scale) {
|
|
|
76713
76811
|
var toppaper = fullLayout._toppaper;
|
|
76714
76812
|
var width = fullLayout.width;
|
|
76715
76813
|
var height = fullLayout.height;
|
|
76716
|
-
var i
|
|
76814
|
+
var i;
|
|
76717
76815
|
|
|
76718
76816
|
// make background color a rect in the svg, then revert after scraping
|
|
76719
76817
|
// all other alterations have been dealt with by properly preparing the svg
|
|
@@ -76786,32 +76884,21 @@ module.exports = function toSVG(gd, format, scale) {
|
|
|
76786
76884
|
}
|
|
76787
76885
|
});
|
|
76788
76886
|
|
|
76789
|
-
|
|
76790
|
-
|
|
76791
|
-
for(k in fullLayout._gradientUrlQueryParts) queryParts.push(k);
|
|
76792
|
-
}
|
|
76793
|
-
|
|
76794
|
-
if(fullLayout._patternUrlQueryParts) {
|
|
76795
|
-
for(k in fullLayout._patternUrlQueryParts) queryParts.push(k);
|
|
76796
|
-
}
|
|
76797
|
-
|
|
76798
|
-
if(queryParts.length) {
|
|
76799
|
-
svg.selectAll(queryParts.join(',')).each(function() {
|
|
76800
|
-
var pt = d3.select(this);
|
|
76887
|
+
svg.selectAll('.gradient_filled,.pattern_filled').each(function() {
|
|
76888
|
+
var pt = d3.select(this);
|
|
76801
76889
|
|
|
76802
|
-
|
|
76803
|
-
|
|
76804
|
-
|
|
76805
|
-
|
|
76806
|
-
|
|
76807
|
-
|
|
76890
|
+
// similar to font family styles above,
|
|
76891
|
+
// we must remove " after the SVG DOM has been serialized
|
|
76892
|
+
var fill = this.style.fill;
|
|
76893
|
+
if(fill && fill.indexOf('url(') !== -1) {
|
|
76894
|
+
pt.style('fill', fill.replace(DOUBLEQUOTE_REGEX, DUMMY_SUB));
|
|
76895
|
+
}
|
|
76808
76896
|
|
|
76809
|
-
|
|
76810
|
-
|
|
76811
|
-
|
|
76812
|
-
|
|
76813
|
-
|
|
76814
|
-
}
|
|
76897
|
+
var stroke = this.style.stroke;
|
|
76898
|
+
if(stroke && stroke.indexOf('url(') !== -1) {
|
|
76899
|
+
pt.style('stroke', stroke.replace(DOUBLEQUOTE_REGEX, DUMMY_SUB));
|
|
76900
|
+
}
|
|
76901
|
+
});
|
|
76815
76902
|
|
|
76816
76903
|
if(format === 'pdf' || format === 'eps') {
|
|
76817
76904
|
// these formats make the extra line MathJax adds around symbols look super thick in some cases
|
|
@@ -79453,6 +79540,7 @@ var hovertemplateAttrs = _dereq_('../../plots/template_attributes').hovertemplat
|
|
|
79453
79540
|
var colorScaleAttrs = _dereq_('../../components/colorscale/attributes');
|
|
79454
79541
|
var fontAttrs = _dereq_('../../plots/font_attributes');
|
|
79455
79542
|
var dash = _dereq_('../../components/drawing/attributes').dash;
|
|
79543
|
+
var pattern = _dereq_('../../components/drawing/attributes').pattern;
|
|
79456
79544
|
|
|
79457
79545
|
var Drawing = _dereq_('../../components/drawing');
|
|
79458
79546
|
var constants = _dereq_('./constants');
|
|
@@ -79640,6 +79728,7 @@ module.exports = {
|
|
|
79640
79728
|
editType: 'style',
|
|
79641
79729
|
anim: true,
|
|
79642
79730
|
},
|
|
79731
|
+
fillpattern: pattern,
|
|
79643
79732
|
marker: extendFlat({
|
|
79644
79733
|
symbol: {
|
|
79645
79734
|
valType: 'enumerated',
|
|
@@ -80376,6 +80465,7 @@ var handleLineDefaults = _dereq_('./line_defaults');
|
|
|
80376
80465
|
var handleLineShapeDefaults = _dereq_('./line_shape_defaults');
|
|
80377
80466
|
var handleTextDefaults = _dereq_('./text_defaults');
|
|
80378
80467
|
var handleFillColorDefaults = _dereq_('./fillcolor_defaults');
|
|
80468
|
+
var coercePattern = _dereq_('../../lib').coercePattern;
|
|
80379
80469
|
|
|
80380
80470
|
module.exports = function supplyDefaults(traceIn, traceOut, defaultColor, layout) {
|
|
80381
80471
|
function coerce(attr, dflt) {
|
|
@@ -80429,6 +80519,7 @@ module.exports = function supplyDefaults(traceIn, traceOut, defaultColor, layout
|
|
|
80429
80519
|
if(traceOut.fill !== 'none') {
|
|
80430
80520
|
handleFillColorDefaults(traceIn, traceOut, defaultColor, coerce);
|
|
80431
80521
|
if(!subTypes.hasLines(traceOut)) handleLineShapeDefaults(traceIn, traceOut, coerce);
|
|
80522
|
+
coercePattern(coerce, 'fillpattern', traceOut.fillcolor, false);
|
|
80432
80523
|
}
|
|
80433
80524
|
|
|
80434
80525
|
var lineColor = (traceOut.line || {}).color;
|
|
@@ -81811,11 +81902,11 @@ function plotOne(gd, idx, plotinfo, cdscatter, cdscatterAll, element, transition
|
|
|
81811
81902
|
// the points on the axes are the first two points. Otherwise
|
|
81812
81903
|
// animations get a little crazy if the number of points changes.
|
|
81813
81904
|
transition(ownFillEl3).attr('d', 'M' + pt1 + 'L' + pt0 + 'L' + fullpath.substr(1))
|
|
81814
|
-
.call(Drawing.singleFillStyle);
|
|
81905
|
+
.call(Drawing.singleFillStyle, gd);
|
|
81815
81906
|
} else {
|
|
81816
81907
|
// fill to self: just join the path to itself
|
|
81817
81908
|
transition(ownFillEl3).attr('d', fullpath + 'Z')
|
|
81818
|
-
.call(Drawing.singleFillStyle);
|
|
81909
|
+
.call(Drawing.singleFillStyle, gd);
|
|
81819
81910
|
}
|
|
81820
81911
|
}
|
|
81821
81912
|
} else if(tonext) {
|
|
@@ -81827,7 +81918,7 @@ function plotOne(gd, idx, plotinfo, cdscatter, cdscatterAll, element, transition
|
|
|
81827
81918
|
// This makes strange results if one path is *not* entirely
|
|
81828
81919
|
// inside the other, but then that is a strange usage.
|
|
81829
81920
|
transition(tonext).attr('d', fullpath + 'Z' + prevRevpath + 'Z')
|
|
81830
|
-
.call(Drawing.singleFillStyle);
|
|
81921
|
+
.call(Drawing.singleFillStyle, gd);
|
|
81831
81922
|
} else {
|
|
81832
81923
|
// tonextx/y: for now just connect endpoints with lines. This is
|
|
81833
81924
|
// the correct behavior if the endpoints are at the same value of
|
|
@@ -81835,7 +81926,7 @@ function plotOne(gd, idx, plotinfo, cdscatter, cdscatterAll, element, transition
|
|
|
81835
81926
|
// things depending on whether the new endpoint projects onto the
|
|
81836
81927
|
// existing curve or off the end of it
|
|
81837
81928
|
transition(tonext).attr('d', fullpath + 'L' + prevRevpath.substr(1) + 'Z')
|
|
81838
|
-
.call(Drawing.singleFillStyle);
|
|
81929
|
+
.call(Drawing.singleFillStyle, gd);
|
|
81839
81930
|
}
|
|
81840
81931
|
trace._polygons = trace._polygons.concat(prevPolygons);
|
|
81841
81932
|
} else {
|
|
@@ -82228,7 +82319,7 @@ function style(gd) {
|
|
|
82228
82319
|
.call(Drawing.lineGroupStyle);
|
|
82229
82320
|
|
|
82230
82321
|
s.selectAll('g.trace path.js-fill')
|
|
82231
|
-
.call(Drawing.fillGroupStyle);
|
|
82322
|
+
.call(Drawing.fillGroupStyle, gd);
|
|
82232
82323
|
|
|
82233
82324
|
Registry.getComponentMethod('errorbars', 'style')(s);
|
|
82234
82325
|
}
|
|
@@ -86351,7 +86442,7 @@ function getSortFunc(opts, d2c) {
|
|
|
86351
86442
|
'use strict';
|
|
86352
86443
|
|
|
86353
86444
|
// package version injected by `npm run preprocess`
|
|
86354
|
-
exports.version = '2.
|
|
86445
|
+
exports.version = '2.10.0';
|
|
86355
86446
|
|
|
86356
86447
|
},{}],435:[function(_dereq_,module,exports){
|
|
86357
86448
|
(function (global){(function (){
|