数値の加算
浮動小数点数を完全な精度で加算します。
new Adder()
js
const adder = new d3.Adder();
adder.add(number)
js
adder.add(42)
指定された *数値* を加算器の現在の値に加算し、加算器を返します。
adder.valueOf()
js
adder.valueOf() // 42
加算器の現在の値のIEEE 754倍精度浮動小数点表現を返します。短縮表記`+adder`、または`Number(adder)`として強制変換する場合に最も役立ちます。
fsum(values, accessor)
js
d3.fsum([0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1]) // 1
例 · ソース · 指定された*値*の完全精度加算を返します。低速ですが、d3.fsumは、より高い精度が必要な場合はどこでもd3.sumを置き換えることができます。
js
d3.fsum(penguins, (d) => d.body_mass_g) // 1437000
*アクセサー*が指定されている場合、入力*値*の各要素に対して指定された関数を呼び出し、要素`d`、インデックス`i`、および配列`data`を3つの引数として渡します。返された値が加算されます。
fcumsum(values, accessor)
js
d3.fcumsum([1, 1e-14, -1]) // [1, 1.00000000000001, 1e-14]
例 · ソース · 指定された*値*の完全精度累積和をFloat64Arrayとして返します。低速ですが、d3.fcumsumは、より高い精度が必要な場合はd3.cumsumを置き換えることができます。
js
d3.fcumsum(penguins, (d) => d.body_mass_g) // [3750, 7550, 10800, 10800, 14250, …]
*アクセサー*が指定されている場合、入力*値*の各要素に対して指定された関数を呼び出し、要素`d`、インデックス`i`、および配列`data`を3つの引数として渡します。返された値が加算されます。