Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit d2d8e6e

Browse files
committed
revisit ticks on axes with rangebreaks
1 parent a7633c3 commit d2d8e6e

10 files changed

+11
-10
lines changed

src/plots/cartesian/axes.js

Lines changed: 11 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -630,13 +630,13 @@ axes.calcTicks = function calcTicks(ax) {
630630
var newTickVals = [];
631631
var prevPos;
632632

633-
var dir = axrev ? 1 : -1;
634-
var first = axrev ? 0 : len - 1;
635-
var last = axrev ? len - 1 : 0;
636-
for(var q = first; dir * q <= dir * last; q += dir) { // apply reverse loop to pick greater values in breaks first
633+
var dir = axrev ? -1 : 1;
634+
var first = axrev ? len - 1 : 0;
635+
var last = axrev ? 0 : len - 1;
636+
for(var q = first; dir * q <= dir * last; q += dir) {
637637
var tickVal = tickVals[q];
638638
if(ax.maskBreaks(tickVal.value) === BADNUM) {
639-
tickVal.value = moveOutsideBreak(tickVal.value, ax, q < len - 1);
639+
tickVal.value = moveOutsideBreak(tickVal.value, ax);
640640
}
641641

642642
var pos = ax.c2p(tickVal.value);
@@ -645,7 +645,7 @@ axes.calcTicks = function calcTicks(ax) {
645645
newTickVals.push(tickVal);
646646
}
647647
}
648-
tickVals = newTickVals.reverse();
648+
tickVals = newTickVals;
649649
}
650650
}
651651

@@ -958,7 +958,7 @@ axes.tickFirst = function(ax) {
958958
var tick0 = r2l(ax.tick0);
959959

960960
if(ax.tickmode === 'auto' && ax.rangebreaks && ax.maskBreaks(tick0) === BADNUM) {
961-
tick0 = moveOutsideBreak(tick0, ax, true);
961+
tick0 = moveOutsideBreak(tick0, ax);
962962
}
963963

964964
if(isNumeric(dtick)) {
@@ -3160,11 +3160,12 @@ function isAngular(ax) {
31603160
return ax._id === 'angularaxis';
31613161
}
31623162

3163-
function moveOutsideBreak(v, ax, toEnd) {
3164-
for(var k = 0; k < ax._rangebreaks.length; k++) {
3163+
function moveOutsideBreak(v, ax) {
3164+
var len = ax._rangebreaks.length;
3165+
for(var k = 0; k < len; k++) {
31653166
var brk = ax._rangebreaks[k];
31663167
if(v >= brk.min && v < brk.max) {
3167-
return toEnd ? brk.max : brk.min;
3168+
return brk.max;
31683169
}
31693170
}
31703171
return v;
129 Bytes
Loading
Loading
-22 Bytes
Loading
-71 Bytes
Loading
-52 Bytes
Loading
123 Bytes
Loading
574 Bytes
Loading
Loading

test/image/baselines/axes_breaks.png

-329 Bytes
Loading

0 commit comments

Comments
 (0)