Skip to content

Commit 13eb10f

Browse files
committed
fix break overlaps on reversed ranges
1 parent 33b73ef commit 13eb10f

File tree

2 files changed

+6
-4
lines changed

2 files changed

+6
-4
lines changed

src/plots/cartesian/axes.js

+6-4
Original file line numberDiff line numberDiff line change
@@ -694,7 +694,6 @@ axes.calcTicks = function calcTicks(ax, opts) {
694694
x = axes.tickIncrement(x, ax.dtick, axrev, ax.calendar)
695695
) {
696696
if(ax.rangebreaks && moveOutsideBreak(x, ax) === maxRange) continue;
697-
698697
// prevent infinite loops - no more than one tick per pixel,
699698
// and make sure each value is different from the previous
700699
if(tickVals.length > maxTicks || x === xPrevious) break;
@@ -827,7 +826,7 @@ axes.calcTicks = function calcTicks(ax, opts) {
827826
(prevL > l - fontSize) :
828827
(prevL < l + fontSize)
829828
) { // ensure one pixel minimum
830-
tickVals.splice(i, 1);
829+
tickVals.splice(i + (axrev ? 1 : 0), 1);
831830
} else {
832831
prevL = l;
833832
}
@@ -3393,8 +3392,11 @@ function moveOutsideBreak(v, ax, isStart) {
33933392
var len = ax._rangebreaks.length;
33943393
for(var k = 0; k < len; k++) {
33953394
var brk = ax._rangebreaks[k];
3396-
if(v >= brk.min && v < brk.max) {
3397-
return isStart ? brk.min : brk.max;
3395+
// TODO: figure out why brk.min > brk.max ?!
3396+
var min = Math.min(brk.min, brk.max);
3397+
var max = Math.max(brk.min, brk.max);
3398+
if(v >= min && v < max) {
3399+
return isStart ? min : max;
33983400
}
33993401
}
34003402
return v;
-67 Bytes
Loading

0 commit comments

Comments
 (0)