@@ -13,7 +13,6 @@ var isNumeric = require('fast-isnumeric');
13
13
var Lib = require ( '../../lib' ) ;
14
14
var Registry = require ( '../../registry' ) ;
15
15
var Axes = require ( '../../plots/cartesian/axes' ) ;
16
- var alignPeriod = require ( '../../plots/cartesian/align_period' ) ;
17
16
18
17
var arraysToCalcdata = require ( '../bar/arrays_to_calcdata' ) ;
19
18
var binFunctions = require ( './bin_functions' ) ;
@@ -24,19 +23,16 @@ var getBinSpanLabelRound = require('./bin_label_vals');
24
23
function calc ( gd , trace ) {
25
24
var pos = [ ] ;
26
25
var size = [ ] ;
27
- var isHorizontal = trace . orientation === 'h' ;
28
- var pa = Axes . getFromId ( gd , isHorizontal ? trace . yaxis : trace . xaxis ) ;
29
- var mainData = isHorizontal ? 'y' : 'x' ;
26
+ var pa = Axes . getFromId ( gd , trace . orientation === 'h' ? trace . yaxis : trace . xaxis ) ;
27
+ var mainData = trace . orientation === 'h' ? 'y' : 'x' ;
30
28
var counterData = { x : 'y' , y : 'x' } [ mainData ] ;
31
29
var calendar = trace [ mainData + 'calendar' ] ;
32
- var hasPeriod = trace [ mainData + 'periodalignment' ] ;
33
30
var cumulativeSpec = trace . cumulative ;
34
31
var i ;
35
32
36
33
var binsAndPos = calcAllAutoBins ( gd , trace , pa , mainData ) ;
37
34
var binSpec = binsAndPos [ 0 ] ;
38
35
var pos0 = binsAndPos [ 1 ] ;
39
- var origPos = binsAndPos [ 2 ] ;
40
36
41
37
var nonuniformBins = typeof binSpec . size === 'string' ;
42
38
var binEdges = [ ] ;
@@ -189,21 +185,13 @@ function calc(gd, trace) {
189
185
b : 0
190
186
} ;
191
187
192
- if ( hasPeriod ) {
193
- cdi . orig_p = origPos [ i ] ;
194
- }
195
-
196
188
// setup hover and event data fields,
197
189
// N.B. pts and "hover" positions ph0/ph1 don't seem to make much sense
198
190
// for cumulative distributions
199
191
if ( ! cumulativeSpec . enabled ) {
200
192
cdi . pts = inputPoints [ i ] ;
201
193
if ( uniqueValsPerBin ) {
202
- if ( hasPeriod ) {
203
- cdi . ph0 = cdi . ph1 = cdi . pts . length ? origPos [ cdi . pts [ 0 ] ] : cdi . orig_p ;
204
- } else {
205
- cdi . ph0 = cdi . ph1 = cdi . pts . length ? pos0 [ cdi . pts [ 0 ] ] : cdi . p ;
206
- }
194
+ cdi . ph0 = cdi . ph1 = ( inputPoints [ i ] . length ) ? pos0 [ inputPoints [ i ] [ 0 ] ] : pos [ i ] ;
207
195
} else {
208
196
// Defer evaluation of ph(0|1) in crossTraceCalc
209
197
trace . _computePh = true ;
@@ -245,7 +233,7 @@ function calcAllAutoBins(gd, trace, pa, mainData, _overlayEdgeCase) {
245
233
var groupName = trace [ '_' + mainData + 'bingroup' ] ;
246
234
var binOpts = fullLayout . _histogramBinOpts [ groupName ] ;
247
235
var isOverlay = fullLayout . barmode === 'overlay' ;
248
- var i , traces , tracei , calendar , pos0 , origPos , autoVals , cumulativeSpec ;
236
+ var i , traces , tracei , calendar , pos0 , autoVals , cumulativeSpec ;
249
237
250
238
var r2c = function ( v ) { return pa . r2c ( v , 0 , calendar ) ; } ;
251
239
var c2r = function ( v ) { return pa . c2r ( v , 0 , calendar ) ; } ;
@@ -284,9 +272,7 @@ function calcAllAutoBins(gd, trace, pa, mainData, _overlayEdgeCase) {
284
272
285
273
if ( tracei . visible ) {
286
274
var mainDatai = binOpts . dirs [ i ] ;
287
- origPos = pa . makeCalcdata ( tracei , mainDatai ) ;
288
- pos0 = alignPeriod ( trace , pa , mainData , origPos ) ;
289
- tracei [ '_' + mainDatai + 'pos0' ] = pos0 ;
275
+ pos0 = tracei [ '_' + mainDatai + 'pos0' ] = pa . makeCalcdata ( tracei , mainDatai ) ;
290
276
291
277
allPos = Lib . concat ( allPos , pos0 ) ;
292
278
delete tracei [ '_' + mainData + 'autoBinFinished' ] ;
@@ -334,7 +320,7 @@ function calcAllAutoBins(gd, trace, pa, mainData, _overlayEdgeCase) {
334
320
// Several single-valued histograms! Stop infinite recursion,
335
321
// just return an extra flag that tells handleSingleValueOverlays
336
322
// to sort out this trace too
337
- if ( _overlayEdgeCase ) return [ newBinSpec , pos0 , origPos , true ] ;
323
+ if ( _overlayEdgeCase ) return [ newBinSpec , pos0 , true ] ;
338
324
339
325
newBinSpec = handleSingleValueOverlays ( gd , trace , pa , mainData , binAttr ) ;
340
326
}
@@ -421,7 +407,7 @@ function calcAllAutoBins(gd, trace, pa, mainData, _overlayEdgeCase) {
421
407
delete trace [ autoBinAttr ] ;
422
408
}
423
409
424
- return [ traceBinOptsCalc , pos0 , origPos , false ] ;
410
+ return [ traceBinOptsCalc , pos0 ] ;
425
411
}
426
412
427
413
/*
@@ -455,7 +441,7 @@ function handleSingleValueOverlays(gd, trace, pa, mainData, binAttr) {
455
441
} else {
456
442
var resulti = calcAllAutoBins ( gd , tracei , pa , mainData , true ) ;
457
443
var binSpeci = resulti [ 0 ] ;
458
- var isSingleValued = resulti [ 3 ] ;
444
+ var isSingleValued = resulti [ 2 ] ;
459
445
460
446
// so we can use this result when we get to tracei in the normal
461
447
// course of events, mark it as done and put _pos0 back
0 commit comments