D3.js 使用SI前缀格式化数字,小数位数固定
我正在查看d3.0格式的可用类型 可用的类型值包括: 指数(“e”)-使用Number.toExponential 一般(“g”)-使用Number.toPrecision 固定(“f”)-使用Number.toFixed 整数(“d”)-使用Number.toString,但忽略任何非整数值 四舍五入(“r”)-类似于固定的,但四舍五入到精确的有效数字 百分比(“%”)-类似于固定值,但乘以100,后缀为“%” 四舍五入百分比(“p”)-类似四舍五入,但乘以100,后缀为“%” SI前缀(“s”)-类似于四舍五入的,但带有单位后缀,如“9.5M”或“1.00µ” 我想要的是一个SI前缀,类似于fixed not rounded。是否存在这样的格式选项 一些例子:D3.js 使用SI前缀格式化数字,小数位数固定,d3.js,D3.js,我正在查看d3.0格式的可用类型 可用的类型值包括: 指数(“e”)-使用Number.toExponential 一般(“g”)-使用Number.toPrecision 固定(“f”)-使用Number.toFixed 整数(“d”)-使用Number.toString,但忽略任何非整数值 四舍五入(“r”)-类似于固定的,但四舍五入到精确的有效数字 百分比(“%”)-类似于固定值,但乘以100,后缀为“%” 四舍五入百分比(“p”)-类似四舍五入,但乘以100,后缀为“%” SI前缀(“s
var format = d3.format('.1s');
format(12600000); // Would like 12.6M get 10M
format(12400000); // Would like 12.4M get 10M
format(1240000); // Would like 1.2M get 1M
format(1290000); // Would like 1.3M get 1M
你几乎把它做好了。使用one可以获得SI前缀。为了得到不带小数的整数,我使用了:
您可以自己在尝试。您只需更改
d3.format('.1s');
借
console.log(d3.format(“.3s”)(12600000))代码>
知道如何在d3 v4中实现这一点吗?这对我来说是在d3 v4中获得一个带有SI前缀的固定点:值=238489000;log(d3.formatPrefix('.1f',value)(value))代码>//238.5
d3.format('.1s');
d3.format('.3s');