@@ -192,33 +192,28 @@ module.exports = function setConvert(ax, fullLayout) {
192
192
} ;
193
193
194
194
if ( ax . rangebreaks ) {
195
+ var isY = axLetter === 'y' ;
196
+
195
197
l2p = function ( v ) {
196
198
if ( ! isNumeric ( v ) ) return BADNUM ;
197
199
var len = ax . _rangebreaks . length ;
198
200
if ( ! len ) return _l2p ( v , ax . _m , ax . _b ) ;
199
201
200
- var isY = axLetter === 'y' ;
201
- var pos = v ;
202
-
203
202
var flip = isY ;
204
203
if ( ax . range [ 0 ] > ax . range [ 1 ] ) flip = ! flip ;
205
204
var signAx = flip ? - 1 : 1 ;
205
+ var pos = signAx * v ;
206
206
207
- var first = 0 ;
208
- var last = len - 1 ;
209
- var q = first ;
210
- for ( var i = first ; i <= last ; i += 1 ) {
211
- var nextI = i + 1 ;
212
- var brk = ax . _rangebreaks [ i ] ;
213
-
214
- var min = brk . min ;
215
- var max = brk . max ;
207
+ var q = 0 ;
208
+ for ( var i = 0 ; i < len ; i ++ ) {
209
+ var min = signAx * ax . _rangebreaks [ i ] . min ;
210
+ var max = signAx * ax . _rangebreaks [ i ] . max ;
216
211
217
- if ( signAx * pos < signAx * min ) break ;
218
- if ( signAx * pos > signAx * max ) q = nextI ;
212
+ if ( pos < min ) break ;
213
+ if ( pos > max ) q = i + 1 ;
219
214
else {
220
215
// when falls into break, pick 'closest' offset
221
- q = signAx * pos > signAx * ( min + max ) / 2 ? nextI : i ;
216
+ q = pos < ( min + max ) / 2 ? i : i + 1 ;
222
217
break ;
223
218
}
224
219
}
@@ -232,18 +227,10 @@ module.exports = function setConvert(ax, fullLayout) {
232
227
var len = ax . _rangebreaks . length ;
233
228
if ( ! len ) return _p2l ( px , ax . _m , ax . _b ) ;
234
229
235
- var isY = axLetter === 'y' ;
236
- var pos = px ;
237
-
238
- var first = 0 ;
239
- var last = len - 1 ;
240
- var q = first ;
241
- for ( var i = first ; i <= last ; i += 1 ) {
242
- var nextI = i + 1 ;
243
- var brk = ax . _rangebreaks [ i ] ;
244
-
245
- if ( pos < brk . pmin ) break ;
246
- if ( pos > brk . pmax ) q = nextI ;
230
+ var q = 0 ;
231
+ for ( var i = 0 ; i < len ; i ++ ) {
232
+ if ( px < ax . _rangebreaks [ i ] . pmin ) break ;
233
+ if ( px > ax . _rangebreaks [ i ] . pmax ) q = i + 1 ;
247
234
}
248
235
var b2 = ax . _B [ q ] ;
249
236
return _p2l ( px , ( isY ? - 1 : 1 ) * ax . _m2 , b2 ) ;
0 commit comments