10
10
11
11
var Registry = require ( '../../registry' ) ;
12
12
13
- function calculateAxisErrors ( data , params , scaleFactor , axis , calendar ) {
13
+ function calculateAxisErrors ( data , params , scaleFactor , axis ) {
14
14
if ( ! params || ! params . visible ) return null ;
15
15
16
16
var computeError = Registry . getComponentMethod ( 'errorbars' , 'makeComputeError' ) ( params ) ;
@@ -19,11 +19,18 @@ function calculateAxisErrors(data, params, scaleFactor, axis, calendar) {
19
19
for ( var i = 0 ; i < data . length ; i ++ ) {
20
20
var errors = computeError ( + data [ i ] , i ) ;
21
21
22
- var point = axis . d2l ( data [ i ] , 0 , calendar ) * scaleFactor ; // A bit wasteful
23
- result [ i ] = [
24
- ( axis . d2l ( data [ i ] - errors [ 0 ] , 0 , calendar ) * scaleFactor ) - point || - point ,
25
- ( axis . d2l ( data [ i ] + errors [ 1 ] , 0 , calendar ) * scaleFactor ) - point || - point
26
- ] ;
22
+ if ( axis . type === 'log' ) {
23
+ var point = axis . c2l ( data [ i ] ) ;
24
+ result [ i ] = [
25
+ ( axis . c2l ( data [ i ] - errors [ 0 ] ) - point || - point ) * scaleFactor ,
26
+ ( axis . c2l ( data [ i ] + errors [ 1 ] ) - point ) * scaleFactor
27
+ ] ;
28
+ } else {
29
+ result [ i ] = [
30
+ - errors [ 0 ] * scaleFactor ,
31
+ errors [ 1 ] * scaleFactor
32
+ ] ;
33
+ }
27
34
}
28
35
29
36
return result ;
@@ -38,9 +45,9 @@ function dataLength(array) {
38
45
39
46
function calculateErrors ( data , scaleFactor , sceneLayout ) {
40
47
var errors = [
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 )
48
+ calculateAxisErrors ( data . x , data . error_x , scaleFactor [ 0 ] , sceneLayout . xaxis ) ,
49
+ calculateAxisErrors ( data . y , data . error_y , scaleFactor [ 1 ] , sceneLayout . yaxis ) ,
50
+ calculateAxisErrors ( data . z , data . error_z , scaleFactor [ 2 ] , sceneLayout . zaxis )
44
51
] ;
45
52
46
53
var n = dataLength ( errors ) ;
0 commit comments