d3-random, 从各种分布生成随机数

分享于 

4分钟阅读

GitHub

  繁體 雙語
Generate random numbers from various distributions.
  • 源代码名称:d3-random
  • 源代码网址:http://www.github.com/d3/d3-random
  • d3-random源代码文档
  • d3-random源代码下载
  • Git URL:
    git://www.github.com/d3/d3-random.git
    Git Clone代码到本地:
    git clone http://www.github.com/d3/d3-random
    Subversion代码到本地:
    $ svn co --depth empty http://www.github.com/d3/d3-random
    Checked out revision 1.
    $ cd repo
    $ svn up trunk
    
    d3-random

    从各种分布生成随机数。

    安装

    如果你使用 NPM,npm install d3-random。 否则,下载最新版本的。 你也可以直接从 d3js.org 加载,或者作为一个独立库,或者作为D3 4.0的一部分。 支持 AMD,CommonJS和香草环境。 在vanilla中,导出了一个 d3 全局:

    <scriptsrc="https://d3js.org/d3-random.v1.min.js"></script>
    <script>var random =d3.randomUniform(1, 10);</script>

    在浏览器中尝试 d3-random。

    API参考

    # d3.randomUniform( [min, ] [max] ) <>

    返回一个函数,用于使用均匀分布函数生成随机数。 返回的数字允许的最小值是 ,最大值为。 如果未指定 min,则默认为 0 ;如果未指定 max,则默认为 1. 例如:

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

    请注意,你还可以使用内置的 Math.random 插件直接生成均匀分布。 例如,要在 0和 99 ( 包含) 之间生成一个随机整数,可以说 Math.random() * 100 | 0

    # d3.randomNormal( [mu] [, sigma] ) <>

    返回一个函数,用于生成带有正常( 高斯) 分布函数的随机数。 所生成数字的期望值为 mu,具有给定的标准偏差。 如果未指定 mu,则默认为;如果未指定,则默认值为 1.

    # d3.randomLogNormal( [mu] [, sigma] ) <>

    返回一个函数,用于使用日志正态分布函数生成随机数。 变对数随机自然的期望值是 mu,具有给定的标准偏差。 如果未指定 mu,则默认为;如果未指定,则默认值为 1.

    # d3.randomBates(n) <>

    返回一个函数,用一个 Bates分布函数生成随机数,带有个独立变量。

    # d3.randomIrwinHall(n) <>

    返回一个函数,用 Irwin霍尔分布函数生成随机数,它带有个独立变量。

    # d3.randomExponential(lambda) <>

    使用一个指数分布函数,返回随机数的函数,它的速率为 ,等价于泊松过程的时间,平均为1/λ。 例如指数( 1/40 ) 在事件之间产生随机时间,在平均情况下,每 40个小时发生一次事件。

    # random.source(source )

    Returns的函数类型,但在给定随机数生成器源用作随机源而不是随机随机数源时,返回相同的函数类型。 给定的随机数生成器必须实现与 Math.random 相同的接口,并且只返回范围[ 0,1中的值。 当种子随机数生成器比 Math.random 更好时,这很有用。 例如:

    var d3 =require("d3-random"),
     seedrandom =require("seedrandom"),
     random =d3.randomNormal.source(seedrandom("a22ebc7c488a3a47"))(0, 1);random(); // 0.9744193494813501

    相关文章