@@ -13,22 +13,6 @@ var d3 = require('d3');
13
13
var Lib = require ( '../../lib' ) ;
14
14
var Drawing = require ( '../../components/drawing' ) ;
15
15
16
- // repeatable pseudorandom generator
17
- var randSeed = 2000000000 ;
18
-
19
- function seed ( ) {
20
- randSeed = 2000000000 ;
21
- }
22
-
23
- function rand ( ) {
24
- var lastVal = randSeed ;
25
- randSeed = ( 69069 * randSeed + 1 ) % 4294967296 ;
26
- // don't let consecutive vals be too close together
27
- // gets away from really trying to be random, in favor of better local uniformity
28
- if ( Math . abs ( randSeed - lastVal ) < 429496729 ) return rand ( ) ;
29
- return randSeed / 4294967296 ;
30
- }
31
-
32
16
// constants for dynamic jitter (ie less jitter for sparser points)
33
17
var JITTERCOUNT = 5 ; // points either side of this to include
34
18
var JITTERSPREAD = 0.01 ; // fraction of IQR to count as "dense"
@@ -179,8 +163,8 @@ function plotPoints(sel, axes, trace, t) {
179
163
// to support violin points
180
164
var mode = trace . boxpoints || trace . points ;
181
165
182
- // repeatable pseudorandom number generator
183
- seed ( ) ;
166
+ // repeatable pseudo-random number generator
167
+ Lib . seedPseudoRandom ( ) ;
184
168
185
169
sel . selectAll ( 'g.points' )
186
170
// since box plot points get an extra level of nesting, each
@@ -247,7 +231,7 @@ function plotPoints(sel, axes, trace, t) {
247
231
var v = pt . v ;
248
232
249
233
var jitterOffset = trace . jitter ?
250
- ( newJitter * jitterFactors [ i ] * ( rand ( ) - 0.5 ) ) :
234
+ ( newJitter * jitterFactors [ i ] * ( Lib . pseudoRandom ( ) - 0.5 ) ) :
251
235
0 ;
252
236
253
237
var posPx = d . pos + bPos + bdPos * ( trace . pointpos + jitterOffset ) ;
0 commit comments