@@ -600,22 +600,29 @@ module.exports = function setConvert(ax, fullLayout) {
600
600
var rangebreaksIn = ax . rangebreaks || [ ] ;
601
601
var bnds , b0 , b1 , vb , vDate ;
602
602
603
- if ( ! rangebreaksIn . _cachedVals ) {
604
- rangebreaksIn . _cachedVals = rangebreaksIn . map ( brk => {
605
- return brk . values ? Lib . simpleMap ( brk . values , ax . d2c ) . sort ( Lib . sorterAsc ) : null ;
603
+
604
+ if ( ! rangebreaksIn . _cachedPatterns ) {
605
+ rangebreaksIn . _cachedPatterns = rangebreaksIn . map ( function ( brk ) {
606
+ return brk . enabled && brk . bounds ? Lib . simpleMap ( brk . bounds , brk . pattern ?
607
+ cleanNumber :
608
+ ax . d2c // case of pattern: ''
609
+ ) : null ;
610
+ } ) ;
611
+ }
612
+ if ( ! rangebreaksIn . _cachedValues ) {
613
+ rangebreaksIn . _cachedValues = rangebreaksIn . map ( function ( brk ) {
614
+ return brk . enabled && brk . values ? Lib . simpleMap ( brk . values , ax . d2c ) . sort ( Lib . sorterAsc ) : null ;
606
615
} ) ;
607
616
}
608
617
618
+
609
619
for ( var i = 0 ; i < rangebreaksIn . length ; i ++ ) {
610
620
var brk = rangebreaksIn [ i ] ;
611
621
612
622
if ( brk . enabled ) {
613
623
if ( brk . bounds ) {
614
624
var pattern = brk . pattern ;
615
- bnds = Lib . simpleMap ( brk . bounds , pattern ?
616
- cleanNumber :
617
- ax . d2c // case of pattern: ''
618
- ) ;
625
+ bnds = rangebreaksIn . _cachedPatterns [ i ] ;
619
626
b0 = bnds [ 0 ] ;
620
627
b1 = bnds [ 1 ] ;
621
628
@@ -659,7 +666,7 @@ module.exports = function setConvert(ax, fullLayout) {
659
666
660
667
if ( vb >= b0 && vb < b1 ) return BADNUM ;
661
668
} else {
662
- var vals = rangebreaksIn . _cachedVals [ i ] ;
669
+ var vals = rangebreaksIn . _cachedValues [ i ] ;
663
670
for ( var j = 0 ; j < vals . length ; j ++ ) {
664
671
b0 = vals [ j ] ;
665
672
b1 = b0 + brk . dvalue ;
0 commit comments