Skip to content

Commit b3ac3c9

Browse files
committed
Ignore offsetgroup and alignmentgroup for those trace types that don't have a mode "stack", i.e. scatter, box, violin, waterfall
1 parent d855f17 commit b3ac3c9

File tree

3 files changed

+19
-12
lines changed

3 files changed

+19
-12
lines changed

src/traces/box/defaults.js

+4-1
Original file line numberDiff line numberDiff line change
@@ -303,7 +303,10 @@ function crossTraceDefaults(fullData, fullLayout) {
303303

304304
if(traceType === 'box' || traceType === 'violin') {
305305
traceIn = traceOut._input;
306-
handleGroupingDefaults(traceIn, traceOut, fullLayout, coerce, fullLayout[traceType + 'mode']);
306+
var mode = fullLayout[traceType + 'mode'];
307+
if(mode === 'group') {
308+
handleGroupingDefaults(traceIn, traceOut, fullLayout, coerce, mode);
309+
}
307310
}
308311
}
309312
}

src/traces/scatter/cross_trace_defaults.js

+9-6
Original file line numberDiff line numberDiff line change
@@ -7,17 +7,20 @@ var attributes = require('./attributes');
77
// remove opacity for any trace that has a fill or is filled to
88
module.exports = function crossTraceDefaults(fullData, fullLayout) {
99
var traceIn, traceOut, i;
10+
var scattermode = fullLayout.scattermode;
1011

1112
function coerce(attr) {
1213
return Lib.coerce(traceOut._input, traceOut, attributes, attr);
1314
}
1415

15-
for(i = 0; i < fullData.length; i++) {
16-
traceOut = fullData[i];
17-
18-
if(traceOut.type === 'scatter') {
19-
traceIn = traceOut._input;
20-
handleGroupingDefaults(traceIn, traceOut, fullLayout, coerce, fullLayout.scattermode);
16+
if(fullLayout.scattermode === 'group') {
17+
for(i = 0; i < fullData.length; i++) {
18+
traceOut = fullData[i];
19+
20+
if(traceOut.type === 'scatter') {
21+
traceIn = traceOut._input;
22+
handleGroupingDefaults(traceIn, traceOut, fullLayout, coerce, scattermode);
23+
}
2124
}
2225
}
2326

src/traces/waterfall/defaults.js

+6-5
Original file line numberDiff line numberDiff line change
@@ -85,12 +85,13 @@ function crossTraceDefaults(fullData, fullLayout) {
8585
function coerce(attr) {
8686
return Lib.coerce(traceOut._input, traceOut, attributes, attr);
8787
}
88+
if(fullLayout.waterfallmode === 'group') {
89+
for(var i = 0; i < fullData.length; i++) {
90+
traceOut = fullData[i];
91+
traceIn = traceOut._input;
8892

89-
for(var i = 0; i < fullData.length; i++) {
90-
traceOut = fullData[i];
91-
traceIn = traceOut._input;
92-
93-
handleGroupingDefaults(traceIn, traceOut, fullLayout, coerce, fullLayout.waterfallmode);
93+
handleGroupingDefaults(traceIn, traceOut, fullLayout, coerce, fullLayout.waterfallmode);
94+
}
9495
}
9596
}
9697

0 commit comments

Comments
 (0)