Skip to content
forked from d3/d3-random

Generate random numbers from various distributions.

License

Notifications You must be signed in to change notification settings

UBC-CPEN/d3-random

 
 

Repository files navigation

d3-random

Generate random numbers from various distributions.

Installing

If you use NPM, npm install d3-random. Otherwise, download the latest release.

API Reference

# uniform([min, ][max])

Returns a function for generating random numbers with a uniform distribution. The minimum allowed value of a returned number is min, and the maximum is max. If min is not specified, it defaults to 0; if max is not specified, it defaults to 1. For example:

uniform(6)(); // Returns a number greater than or equal to 0 and less than 6.
uniform(1, 5)(); // Returns a number greater than or equal to 1 and less than 5.

Note that you can also use the built-in Math.random to generate uniform distributions directly. For example, to generate a random integer between 0 and 99 (inclusive), you can say Math.random() * 100 | 0.

# normal([mu][, sigma])

Returns a function for generating random numbers with a normal (Gaussian) distribution. The expected value of the generated numbers is mu, with the given standard deviation sigma. If mu is not specified, it defaults to 0; if sigma is not specified, it defaults to 1.

# logNormal([mu][, sigma])

Returns a function for generating random numbers with a log-normal distribution. The expected value of the random variable’s natural logrithm is mu, with the given standard deviation sigma. If mu is not specified, it defaults to 0; if sigma is not specified, it defaults to 1.

# bates(n)

Returns a function for generating random numbers with a Bates distribution with n independent variables.

# irwinHall(n)

Returns a function for generating random numbers with an Irwin–Hall distribution with n independent variables.

# exponential(lambda)

Returns a function for generating random numbers with an exponential distribution with the rate lambda; equivalent to time between events in a Poisson process with a mean of 1 / lambda. For example, exponential(1/40) generates random times between events where, on average, one event occurs every 40 units of time.

# pareto(xm, alpha)

Returns a function for generating random numbers with a pareto distribution with a shape of xm and the a tail index of alpha.

Changes from D3 3.x:

  • Added a uniform random number generator.

  • Added an exponential random number generator.

  • Added a pareto random number generator.

About

Generate random numbers from various distributions.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 100.0%