Skip to content

Commit cf4c9c3

Browse files
committed
heatmap&carpet/has_columns -> Lib.is1D
heatmap and carpet used opposite meanings here...
1 parent 88b7b43 commit cf4c9c3

File tree

12 files changed

+30
-54
lines changed

12 files changed

+30
-54
lines changed

src/lib/index.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@ lib.ensureArray = require('./ensure_array');
3030
var isArrayModule = require('./is_array');
3131
lib.isTypedArray = isArrayModule.isTypedArray;
3232
lib.isArrayOrTypedArray = isArrayModule.isArrayOrTypedArray;
33+
lib.is1D = isArrayModule.is1D;
3334

3435
var coerceModule = require('./coerce');
3536
lib.valObjectMeta = coerceModule.valObjectMeta;

src/lib/is_array.js

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -18,10 +18,20 @@ var dv = (typeof DataView === 'undefined') ?
1818
function() {} :
1919
DataView;
2020

21-
exports.isTypedArray = function(a) {
21+
function isTypedArray(a) {
2222
return ab.isView(a) && !(a instanceof dv);
23-
};
23+
}
24+
25+
function isArrayOrTypedArray(a) {
26+
return Array.isArray(a) || isTypedArray(a);
27+
}
28+
29+
function is1D(a) {
30+
return !isArrayOrTypedArray(a[0]);
31+
}
2432

25-
exports.isArrayOrTypedArray = function(a) {
26-
return Array.isArray(a) || exports.isTypedArray(a);
33+
module.exports = {
34+
isTypedArray: isTypedArray,
35+
isArrayOrTypedArray: isArrayOrTypedArray,
36+
is1D: is1D
2737
};

src/traces/carpet/ab_defaults.js

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,8 +26,6 @@ module.exports = function handleABDefaults(traceIn, traceOut, fullLayout, coerce
2626
}
2727

2828
mimickAxisDefaults(traceIn, traceOut, fullLayout, dfltColor);
29-
30-
return;
3129
};
3230

3331
function mimickAxisDefaults(traceIn, traceOut, fullLayout, dfltColor) {

src/traces/carpet/calc.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,14 +9,14 @@
99
'use strict';
1010

1111
var Axes = require('../../plots/cartesian/axes');
12+
var is1D = require('../../lib').is1D;
1213
var cheaterBasis = require('./cheater_basis');
1314
var arrayMinmax = require('./array_minmax');
1415
var calcGridlines = require('./calc_gridlines');
1516
var calcLabels = require('./calc_labels');
1617
var calcClipPath = require('./calc_clippath');
1718
var clean2dArray = require('../heatmap/clean_2d_array');
1819
var smoothFill2dArray = require('./smooth_fill_2d_array');
19-
var hasColumns = require('./has_columns');
2020
var convertColumnData = require('../heatmap/convert_column_xyz');
2121
var setConvert = require('./set_convert');
2222

@@ -29,8 +29,8 @@ module.exports = function calc(gd, trace) {
2929
var x = trace.x;
3030
var y = trace.y;
3131
var cols = [];
32-
if(x && !hasColumns(x)) cols.push('x');
33-
if(y && !hasColumns(y)) cols.push('y');
32+
if(x && is1D(x)) cols.push('x');
33+
if(y && is1D(y)) cols.push('y');
3434

3535
if(cols.length) {
3636
convertColumnData(trace, aax, bax, 'a', 'b', cols);

src/traces/carpet/has_columns.js

Lines changed: 0 additions & 15 deletions
This file was deleted.

src/traces/contour/defaults.js

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,6 @@
1111

1212
var Lib = require('../../lib');
1313

14-
var hasColumns = require('../heatmap/has_columns');
1514
var handleXYZDefaults = require('../heatmap/xyz_defaults');
1615
var handleConstraintDefaults = require('./constraint_defaults');
1716
var handleContoursDefaults = require('./contours_defaults');
@@ -36,7 +35,7 @@ module.exports = function supplyDefaults(traceIn, traceOut, defaultColor, layout
3635

3736
coerce('text');
3837
var isConstraint = (coerce('contours.type') === 'constraint');
39-
coerce('connectgaps', hasColumns(traceOut));
38+
coerce('connectgaps', Lib.is1D(traceOut.z));
4039

4140
// trace-level showlegend has already been set, but is only allowed if this is a constraint
4241
if(!isConstraint) delete traceOut.showlegend;

src/traces/contourcarpet/calc.js

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,8 @@
99
'use strict';
1010

1111
var colorscaleCalc = require('../../components/colorscale/calc');
12-
var hasColumns = require('../heatmap/has_columns');
12+
var is1D = require('../../lib').is1D;
13+
1314
var convertColumnData = require('../heatmap/convert_column_xyz');
1415
var clean2dArray = require('../heatmap/clean_2d_array');
1516
var maxRowLength = require('../heatmap/max_row_length');
@@ -69,7 +70,7 @@ function heatmappishCalc(gd, trace) {
6970
aax._minDtick = 0;
7071
bax._minDtick = 0;
7172

72-
if(hasColumns(trace)) convertColumnData(trace, aax, bax, 'a', 'b', ['z']);
73+
if(is1D(trace.z)) convertColumnData(trace, aax, bax, 'a', 'b', ['z']);
7374
a = trace._a = trace._a || trace.a;
7475
b = trace._b = trace._b || trace.b;
7576

src/traces/contourcarpet/defaults.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ module.exports = function supplyDefaults(traceIn, traceOut, defaultColor, layout
5656
var isConstraint = (coerce('contours.type') === 'constraint');
5757

5858
// Unimplemented:
59-
// coerce('connectgaps', hasColumns(traceOut));
59+
// coerce('connectgaps', Lib.is1D(traceOut.z));
6060

6161
// trace-level showlegend has already been set, but is only allowed if this is a constraint
6262
if(!isConstraint) delete traceOut.showlegend;

src/traces/heatmap/calc.js

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,6 @@ var Axes = require('../../plots/cartesian/axes');
1515

1616
var histogram2dCalc = require('../histogram2d/calc');
1717
var colorscaleCalc = require('../../components/colorscale/calc');
18-
var hasColumns = require('./has_columns');
1918
var convertColumnData = require('./convert_column_xyz');
2019
var maxRowLength = require('./max_row_length');
2120
var clean2dArray = require('./clean_2d_array');
@@ -59,7 +58,7 @@ module.exports = function calc(gd, trace) {
5958
}
6059
else {
6160
var zIn = trace.z;
62-
if(hasColumns(trace)) {
61+
if(Lib.is1D(zIn)) {
6362
convertColumnData(trace, xa, ya, 'x', 'y', ['z']);
6463
x = trace._x;
6564
y = trace._y;

src/traces/heatmap/defaults.js

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,6 @@
1111

1212
var Lib = require('../../lib');
1313

14-
var hasColumns = require('./has_columns');
1514
var handleXYZDefaults = require('./xyz_defaults');
1615
var handleStyleDefaults = require('./style_defaults');
1716
var colorscaleDefaults = require('../../components/colorscale/defaults');
@@ -23,8 +22,8 @@ module.exports = function supplyDefaults(traceIn, traceOut, defaultColor, layout
2322
return Lib.coerce(traceIn, traceOut, attributes, attr, dflt);
2423
}
2524

26-
var len = handleXYZDefaults(traceIn, traceOut, coerce, layout);
27-
if(!len) {
25+
var validData = handleXYZDefaults(traceIn, traceOut, coerce, layout);
26+
if(!validData) {
2827
traceOut.visible = false;
2928
return;
3029
}
@@ -33,7 +32,7 @@ module.exports = function supplyDefaults(traceIn, traceOut, defaultColor, layout
3332

3433
handleStyleDefaults(traceIn, traceOut, coerce, layout);
3534

36-
coerce('connectgaps', hasColumns(traceOut) && (traceOut.zsmooth !== false));
35+
coerce('connectgaps', Lib.is1D(traceOut.z) && (traceOut.zsmooth !== false));
3736

3837
colorscaleDefaults(traceIn, traceOut, layout, coerce, {prefix: '', cLetter: 'z'});
3938
};

src/traces/heatmap/has_columns.js

Lines changed: 0 additions & 15 deletions
This file was deleted.

src/traces/heatmap/xyz_defaults.js

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,10 +10,9 @@
1010
'use strict';
1111

1212
var isNumeric = require('fast-isnumeric');
13-
var isArrayOrTypedArray = require('../../lib').isArrayOrTypedArray;
13+
var Lib = require('../../lib');
1414

1515
var Registry = require('../../registry');
16-
var hasColumns = require('./has_columns');
1716

1817
module.exports = function handleXYZDefaults(traceIn, traceOut, coerce, layout, xName, yName) {
1918
var z = coerce('z');
@@ -23,7 +22,7 @@ module.exports = function handleXYZDefaults(traceIn, traceOut, coerce, layout, x
2322

2423
if(z === undefined || !z.length) return 0;
2524

26-
if(hasColumns(traceIn)) {
25+
if(Lib.is1D(traceIn.z)) {
2726
x = coerce(xName);
2827
y = coerce(yName);
2928

@@ -76,7 +75,7 @@ function isValidZ(z) {
7675

7776
for(var i = 0; i < z.length; i++) {
7877
zi = z[i];
79-
if(!isArrayOrTypedArray(zi)) {
78+
if(!Lib.isArrayOrTypedArray(zi)) {
8079
allRowsAreArrays = false;
8180
break;
8281
}

0 commit comments

Comments
 (0)