1010
1111var Registry = require ( '../../registry' ) ;
1212
13- function calculateAxisErrors ( data , params , scaleFactor ) {
13+ function calculateAxisErrors ( data , params , scaleFactor , axis , calendar ) {
1414 if ( ! params || ! params . visible ) return null ;
1515
1616 var computeError = Registry . getComponentMethod ( 'errorbars' , 'makeComputeError' ) ( params ) ;
@@ -19,9 +19,10 @@ function calculateAxisErrors(data, params, scaleFactor) {
1919 for ( var i = 0 ; i < data . length ; i ++ ) {
2020 var errors = computeError ( + data [ i ] , i ) ;
2121
22+ var point = axis . d2l ( data [ i ] , 0 , calendar ) * scaleFactor ; // A bit wasteful
2223 result [ i ] = [
23- - errors [ 0 ] * scaleFactor ,
24- errors [ 1 ] * scaleFactor
24+ ( axis . d2l ( data [ i ] - errors [ 0 ] , 0 , calendar ) * scaleFactor ) - point || - point ,
25+ ( axis . d2l ( data [ i ] + errors [ 1 ] , 0 , calendar ) * scaleFactor ) - point || - point
2526 ] ;
2627 }
2728
@@ -35,11 +36,11 @@ function dataLength(array) {
3536 return 0 ;
3637}
3738
38- function calculateErrors ( data , scaleFactor ) {
39+ function calculateErrors ( data , scaleFactor , sceneLayout ) {
3940 var errors = [
40- calculateAxisErrors ( data . x , data . error_x , scaleFactor [ 0 ] ) ,
41- calculateAxisErrors ( data . y , data . error_y , scaleFactor [ 1 ] ) ,
42- calculateAxisErrors ( data . z , data . error_z , scaleFactor [ 2 ] )
41+ calculateAxisErrors ( data . x , data . error_x , scaleFactor [ 0 ] , sceneLayout . xaxis , data . xcalendar ) ,
42+ calculateAxisErrors ( data . y , data . error_y , scaleFactor [ 1 ] , sceneLayout . yaxis , data . ycalendar ) ,
43+ calculateAxisErrors ( data . z , data . error_z , scaleFactor [ 2 ] , sceneLayout . zaxis , data . zcalendar )
4344 ] ;
4445
4546 var n = dataLength ( errors ) ;
0 commit comments