@@ -95,27 +95,14 @@ function getAutoRange(gd, ax) {
95
95
// don't allow padding to reduce the data to < 10% of the length
96
96
var minSpan = axLen / 10 ;
97
97
98
- // find axis rangebreaks in [v0,v1] and compute its length in value space
99
- var calcBreaksLength = function ( v0 , v1 ) {
100
- var lBreaks = 0 ;
101
- if ( ax . rangebreaks ) {
102
- var rangebreaksOut = ax . locateBreaks ( v0 , v1 ) ;
103
- for ( var i = 0 ; i < rangebreaksOut . length ; i ++ ) {
104
- var brk = rangebreaksOut [ i ] ;
105
- lBreaks += brk . max - brk . min ;
106
- }
107
- }
108
- return lBreaks ;
109
- } ;
110
-
111
98
var mbest = 0 ;
112
99
var minpt , maxpt , minbest , maxbest , dp , dv ;
113
100
114
101
for ( i = 0 ; i < minArray . length ; i ++ ) {
115
102
minpt = minArray [ i ] ;
116
103
for ( j = 0 ; j < maxArray . length ; j ++ ) {
117
104
maxpt = maxArray [ j ] ;
118
- dv = maxpt . val - minpt . val - calcBreaksLength ( minpt . val , maxpt . val ) ;
105
+ dv = maxpt . val - minpt . val - calcBreaksLength ( ax , minpt . val , maxpt . val ) ;
119
106
if ( dv > 0 ) {
120
107
dp = axLen - getPad ( minpt ) - getPad ( maxpt ) ;
121
108
if ( dp > minSpan ) {
@@ -180,7 +167,7 @@ function getAutoRange(gd, ax) {
180
167
}
181
168
182
169
// in case it changed again...
183
- mbest = ( maxbest . val - minbest . val - calcBreaksLength ( minpt . val , maxpt . val ) ) /
170
+ mbest = ( maxbest . val - minbest . val - calcBreaksLength ( ax , minpt . val , maxpt . val ) ) /
184
171
( axLen - getPad ( minbest ) - getPad ( maxbest ) ) ;
185
172
186
173
newRange = [
@@ -195,6 +182,19 @@ function getAutoRange(gd, ax) {
195
182
return Lib . simpleMap ( newRange , ax . l2r || Number ) ;
196
183
}
197
184
185
+ // find axis rangebreaks in [v0,v1] and compute its length in value space
186
+ function calcBreaksLength ( ax , v0 , v1 ) {
187
+ var lBreaks = 0 ;
188
+ if ( ax . rangebreaks ) {
189
+ var rangebreaksOut = ax . locateBreaks ( v0 , v1 ) ;
190
+ for ( var i = 0 ; i < rangebreaksOut . length ; i ++ ) {
191
+ var brk = rangebreaksOut [ i ] ;
192
+ lBreaks += brk . max - brk . min ;
193
+ }
194
+ }
195
+ return lBreaks ;
196
+ }
197
+
198
198
/*
199
199
* calculate the pixel padding for ax._min and ax._max entries with
200
200
* optional extrapad as 5% of the total axis length
0 commit comments