有時候Demo
時或開發某些功能時,可能需要亂數產生,利用原生js
太麻煩了,懶人就得用d3
提供的亂數方法。
直接產出區間的一整數。
let r6 = d3.randomInt(6);
console.log(r6()); // 0-5
let r6 = d3.randomInt(1, 6);
console.log(r6()); // 1-5
可指定期望值,以及標準差。
let r = d3.randomNormal(0.5, 0.13);
r();
Irwin–Hall distribution
分布。
將12個服從均勻分布的隨機數相加可以產生服從參數為12的歐文–賀爾分布的隨機數,再減6,就得到近似服從標準正態分布的隨機數
let r = d3.randomIrwinHall(9);
可以給予一個種子數[0, 1]
,生成變數將會參照種子開始生成,將不會是隨機數。
const d3 = require("d3-random");
const seed = 0.44871573888282423; // any number in [0, 1)
const random = d3.randomNormal.source(d3.randomLcg(seed))(0, 1);
random(); // -0.6253955998897069
很好用的API
,其實大部分的d3.random
都是針對特定統計
相關開發使用,許多API
在非資料統計計算相關可能用不上。
d3-random
Irwin–Hall distribution