@@ -73,7 +73,7 @@ proto.handlePick = function(selection) {
73
73
var xRatio = ( selection . data . index [ 0 ] - 1 ) / this . dataScaleX - 1 ;
74
74
var yRatio = ( selection . data . index [ 1 ] - 1 ) / this . dataScaleY - 1 ;
75
75
76
- var j = Math . max ( Math . min ( Math . round ( xRatio ) , this . data . _xlength - 1 ) , 0 ) ;
76
+ var j = Math . max ( Math . min ( Math . round ( xRatio ) , this . data . z [ 0 ] . length - 1 ) , 0 ) ;
77
77
var k = Math . max ( Math . min ( Math . round ( yRatio ) , this . data . _ylength - 1 ) , 0 ) ;
78
78
79
79
selection . index = [ j , k ] ;
@@ -224,12 +224,18 @@ proto.calcXnums = function(xlen) {
224
224
) ;
225
225
var nums = [ ] ;
226
226
for ( var i = 1 ; i < xlen ; i ++ ) {
227
- nums [ i - 1 ] = Math . round (
228
- maxDist / Math . abs (
229
- this . getXat ( i , 0 ) -
230
- this . getXat ( i - 1 , 0 )
231
- )
232
- ) ;
227
+ var a = this . getXat ( i - 1 , 0 ) ;
228
+ var b = this . getXat ( i , 0 ) ;
229
+
230
+ if ( a !== undefined && a !== null &&
231
+ b !== undefined && b !== null &&
232
+ b != a ) {
233
+ nums [ i - 1 ] = Math . round (
234
+ maxDist / Math . abs ( b - a )
235
+ ) ;
236
+ } else {
237
+ nums [ i - 1 ] = 1 ;
238
+ }
233
239
}
234
240
return nums ;
235
241
} ;
@@ -241,12 +247,18 @@ proto.calcYnums = function(ylen) {
241
247
) ;
242
248
var nums = [ ] ;
243
249
for ( var i = 1 ; i < ylen ; i ++ ) {
244
- nums [ i - 1 ] = Math . round (
245
- maxDist / Math . abs (
246
- this . getYat ( 0 , i ) -
247
- this . getYat ( 0 , i - 1 )
248
- )
249
- ) ;
250
+ var a = this . getYat ( 0 , i - 1 ) ;
251
+ var b = this . getYat ( 0 , i ) ;
252
+
253
+ if ( a !== undefined && a !== null &&
254
+ b !== undefined && b !== null &&
255
+ b != a ) {
256
+ nums [ i - 1 ] = Math . round (
257
+ maxDist / Math . abs ( b - a )
258
+ ) ;
259
+ } else {
260
+ nums [ i - 1 ] = 1 ;
261
+ }
250
262
}
251
263
return nums ;
252
264
} ;
@@ -346,7 +358,7 @@ proto.update = function(data) {
346
358
alpha = data . opacity ,
347
359
colormap = parseColorScale ( data . colorscale , alpha ) ,
348
360
scaleFactor = scene . dataScale ,
349
- xlen = data . _xlength ,
361
+ xlen = data . z [ 0 ] . length ,
350
362
ylen = data . _ylength ,
351
363
contourLevels = scene . contourLevels ;
352
364
0 commit comments