@@ -19,22 +19,18 @@ var cleanBins = require('../histogram/clean_bins');
19
19
20
20
21
21
module . exports = function calc ( gd , trace ) {
22
- var xa = Axes . getFromId ( gd , trace . xaxis || 'x' ) ,
23
- x = trace . x ? xa . makeCalcdata ( trace , 'x' ) : [ ] ,
24
- ya = Axes . getFromId ( gd , trace . yaxis || 'y' ) ,
25
- y = trace . y ? ya . makeCalcdata ( trace , 'y' ) : [ ] ,
26
- xcalendar = trace . xcalendar ,
27
- ycalendar = trace . ycalendar ,
28
- xr2c = function ( v ) { return xa . r2c ( v , 0 , xcalendar ) ; } ,
29
- yr2c = function ( v ) { return ya . r2c ( v , 0 , ycalendar ) ; } ,
30
- xc2r = function ( v ) { return xa . c2r ( v , 0 , xcalendar ) ; } ,
31
- yc2r = function ( v ) { return ya . c2r ( v , 0 , ycalendar ) ; } ,
32
- x0 ,
33
- dx ,
34
- y0 ,
35
- dy ,
36
- z ,
37
- i ;
22
+ var xa = Axes . getFromId ( gd , trace . xaxis || 'x' ) ;
23
+ var x = trace . x ? xa . makeCalcdata ( trace , 'x' ) : [ ] ;
24
+ var ya = Axes . getFromId ( gd , trace . yaxis || 'y' ) ;
25
+ var y = trace . y ? ya . makeCalcdata ( trace , 'y' ) : [ ] ;
26
+ var xcalendar = trace . xcalendar ;
27
+ var ycalendar = trace . ycalendar ;
28
+ var xr2c = function ( v ) { return xa . r2c ( v , 0 , xcalendar ) ; } ;
29
+ var yr2c = function ( v ) { return ya . r2c ( v , 0 , ycalendar ) ; } ;
30
+ var xc2r = function ( v ) { return xa . c2r ( v , 0 , xcalendar ) ; } ;
31
+ var yc2r = function ( v ) { return ya . c2r ( v , 0 , ycalendar ) ; } ;
32
+
33
+ var i , n , m ;
38
34
39
35
cleanBins ( trace , xa , 'x' ) ;
40
36
cleanBins ( trace , ya , 'y' ) ;
@@ -79,33 +75,31 @@ module.exports = function calc(gd, trace) {
79
75
}
80
76
81
77
// make the empty bin array & scale the map
82
- z = [ ] ;
83
- var onecol = [ ] ,
84
- zerocol = [ ] ,
85
- nonuniformBinsX = ( typeof ( trace . xbins . size ) === 'string' ) ,
86
- nonuniformBinsY = ( typeof ( trace . ybins . size ) === 'string' ) ,
87
- xbins = nonuniformBinsX ? [ ] : trace . xbins ,
88
- ybins = nonuniformBinsY ? [ ] : trace . ybins ,
89
- total = 0 ,
90
- n ,
91
- m ,
92
- counts = [ ] ,
93
- norm = trace . histnorm ,
94
- func = trace . histfunc ,
95
- densitynorm = ( norm . indexOf ( 'density' ) !== - 1 ) ,
96
- extremefunc = ( func === 'max' || func === 'min' ) ,
97
- sizeinit = ( extremefunc ? null : 0 ) ,
98
- binfunc = binFunctions . count ,
99
- normfunc = normFunctions [ norm ] ,
100
- doavg = false ,
101
- xinc = [ ] ,
102
- yinc = [ ] ;
78
+ var z = [ ] ;
79
+ var onecol = [ ] ;
80
+ var zerocol = [ ] ;
81
+ var nonuniformBinsX = ( typeof ( trace . xbins . size ) === 'string' ) ;
82
+ var nonuniformBinsY = ( typeof ( trace . ybins . size ) === 'string' ) ;
83
+ var xbins = nonuniformBinsX ? [ ] : trace . xbins ;
84
+ var ybins = nonuniformBinsY ? [ ] : trace . ybins ;
85
+ var total = 0 ;
86
+ var counts = [ ] ;
87
+ var norm = trace . histnorm ;
88
+ var func = trace . histfunc ;
89
+ var densitynorm = ( norm . indexOf ( 'density' ) !== - 1 ) ;
90
+ var extremefunc = ( func === 'max' || func === 'min' ) ;
91
+ var sizeinit = ( extremefunc ? null : 0 ) ;
92
+ var binfunc = binFunctions . count ;
93
+ var normfunc = normFunctions [ norm ] ;
94
+ var doavg = false ;
95
+ var xinc = [ ] ;
96
+ var yinc = [ ] ;
103
97
104
98
// set a binning function other than count?
105
99
// for binning functions: check first for 'z',
106
100
// then 'mc' in case we had a colored scatter plot
107
101
// and want to transfer these colors to the 2D histo
108
- // TODO: this is why we need a data picker in the popover...
102
+ // TODO: axe this, make it the responsibility of the app changing type? or an impliedEdit?
109
103
var rawCounterData = ( 'z' in trace ) ?
110
104
trace . z :
111
105
( ( 'marker' in trace && Array . isArray ( trace . marker . color ) ) ?
@@ -129,10 +123,9 @@ module.exports = function calc(gd, trace) {
129
123
if ( nonuniformBinsX ) xbins . push ( i ) ;
130
124
131
125
var nx = onecol . length ;
132
- x0 = trace . xbins . start ;
133
- var x0c = xr2c ( x0 ) ;
134
- dx = ( i - x0c ) / nx ;
135
- x0 = xc2r ( x0c + dx / 2 ) ;
126
+ var x0c = xr2c ( trace . xbins . start ) ;
127
+ var dx = ( i - x0c ) / nx ;
128
+ var x0 = xc2r ( x0c + dx / 2 ) ;
136
129
137
130
binspec = trace . ybins ;
138
131
binStart = yr2c ( binspec . start ) ;
@@ -147,10 +140,9 @@ module.exports = function calc(gd, trace) {
147
140
if ( nonuniformBinsY ) ybins . push ( i ) ;
148
141
149
142
var ny = z . length ;
150
- y0 = trace . ybins . start ;
151
- var y0c = yr2c ( y0 ) ;
152
- dy = ( i - y0c ) / ny ;
153
- y0 = yc2r ( y0c + dy / 2 ) ;
143
+ var y0c = yr2c ( trace . ybins . start ) ;
144
+ var dy = ( i - y0c ) / ny ;
145
+ var y0 = yc2r ( y0c + dy / 2 ) ;
154
146
155
147
if ( densitynorm ) {
156
148
xinc = onecol . map ( function ( v , i ) {
0 commit comments