Skip to content

Commit fde0d32

Browse files
committed
add extra check for parcoords ranges
1 parent f96d43d commit fde0d32

File tree

1 file changed

+16
-8
lines changed

1 file changed

+16
-8
lines changed

src/traces/parcoords/parcoords.js

+16-8
Original file line numberDiff line numberDiff line change
@@ -32,19 +32,20 @@ function findExtreme(fn, values, len) {
3232
}
3333

3434
function findExtremes(values, len) {
35-
return [
35+
return fixExtremes(
3636
findExtreme(Math.min, values, len),
3737
findExtreme(Math.max, values, len)
38-
];
38+
);
3939
}
4040

4141
function dimensionExtent(dimension) {
4242
var range = dimension.range;
43-
if(!range) range = findExtremes(dimension.values, dimension._length);
44-
45-
var lo = range[0];
46-
var hi = range[1];
43+
return range ?
44+
fixExtremes(range[0], range[1]) :
45+
findExtremes(dimension.values, dimension._length);
46+
}
4747

48+
function fixExtremes(lo, hi) {
4849
if(isNaN(lo) || !isFinite(lo)) {
4950
lo = 0;
5051
}
@@ -404,8 +405,15 @@ function calcAllTicks(cd) {
404405
var dim = dimensions[k]._ax;
405406

406407
if(dim) {
407-
if(!dim.range) dim.range = findExtremes(values, trace._length);
408-
if(!dim.dtick) dim.dtick = 0.01 * (Math.abs(dim.range[1] - dim.range[0]) || 1);
408+
if(!dim.range) {
409+
dim.range = findExtremes(values, trace._length);
410+
} else {
411+
dim.range = fixExtremes(dim.range[0], dim.range[1]);
412+
}
413+
414+
if(!dim.dtick) {
415+
dim.dtick = 0.01 * (Math.abs(dim.range[1] - dim.range[0]) || 1);
416+
}
409417

410418
dim.tickformat = dimensions[k].tickformat;
411419
Axes.calcTicks(dim);

0 commit comments

Comments
 (0)