@@ -12,7 +12,6 @@ var Symbols = require('../drawing/symbol_defs');
12
12
var Drawing = require ( '../drawing' ) ;
13
13
14
14
var helpers = require ( './helpers' ) ;
15
- var dataProcessors = require ( './data_processors' ) ;
16
15
var svgNS = require ( '../../constants/xmlns_namespaces' ) . svg ;
17
16
18
17
module . exports = function rangePlot ( gd , w , h ) {
@@ -42,10 +41,6 @@ module.exports = function rangePlot(gd, w, h) {
42
41
rangePlot . appendChild ( clipDefs ) ;
43
42
44
43
45
- var processX = dataProcessors [ gd . _fullLayout . xaxis . type || 'category' ] ,
46
- processY = dataProcessors [ gd . _fullLayout . yaxis . type || 'category' ] ;
47
-
48
-
49
44
// for now, only scatter traces are supported
50
45
var allowedTypes = [ 'scatter' ] ;
51
46
@@ -59,12 +54,13 @@ module.exports = function rangePlot(gd, w, h) {
59
54
continue ;
60
55
}
61
56
62
- for ( var k = 0 ; k < trace . x . length ; k ++ ) {
63
- var x = processX ( trace . x [ k ] , k ) ,
64
- y = processY ( trace . y [ k ] , k ) ;
57
+ var x = makeLinearData ( trace , xaxis ) ,
58
+ y = makeLinearData ( trace , yaxis ) ;
65
59
66
- var posX = w * ( x - minX ) / ( maxX - minX ) ,
67
- posY = h * ( 1 - ( y - minY ) / ( maxY - minY ) ) ;
60
+ for ( var k = 0 ; k < x . length ; k ++ ) {
61
+
62
+ var posX = w * ( x [ k ] - minX ) / ( maxX - minX ) ,
63
+ posY = h * ( 1 - ( y [ k ] - minY ) / ( maxY - minY ) ) ;
68
64
69
65
pointPairs . push ( [ posX , posY ] ) ;
70
66
}
@@ -77,6 +73,16 @@ module.exports = function rangePlot(gd, w, h) {
77
73
return rangePlot ;
78
74
} ;
79
75
76
+ function makeLinearData ( trace , axis ) {
77
+ var data = axis . makeCalcdata ( trace || [ ] , axis . _id [ 0 ] ) ;
78
+
79
+ for ( var i = 0 ; i < data . length ; i ++ ) {
80
+ data [ i ] = axis . c2l ( data [ i ] ) ;
81
+ }
82
+
83
+ return data ;
84
+ }
85
+
80
86
81
87
function makeScatter ( trace , pointPairs , w , h ) {
82
88
0 commit comments