首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在d3.js中向大数字添加逗号

问在d3.js中向大数字添加逗号
EN

Stack Overflow用户
提问于 2013-03-13 22:06:16
回答 3查看 3.5K关注 0票数 2

我在一条线上有数据点,当光标经过这些数据点时,工具提示div会出现,其中包含有关该点的数据。div的html代码如下所示。

代码语言:javascript
复制
    div.html("The Avengers Box Office: $" + d.Avengers) 

d.Avengers以字符串形式返回207438708。那么在d3.js中有没有办法给大数加逗号呢?

我的值从几千到几亿不等,读起来可能很棘手。

谢谢

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2013-03-14 00:53:16

谢谢你们的回复。我在这里找到了答案。它不是添加逗号,而是在数百万或数千之后添加M或K。实际上我觉得这样更好。

https://groups.google.com/forum/?fromgroups=#!topic/d3-js/YFsSmzu4JZk

票数 2
EN

Stack Overflow用户

发布于 2013-03-13 22:48:18

Solution:您不能使用d3添加逗号,但可以通过普通的JavaScript添加逗号:Number.toLocaleString()

代码语言:javascript
复制
// convert Avengers to a Number and use the toLocaleString on it
div.html("The Avengers Box Office: $" + (1*d.Avengers).toLocaleString() ) 

高级解决方案:如果你的主要问题是数字太大(即使有逗号),你需要为你的数字写一些非常酷的转换函数,

  1. 计算小数和
  2. 选择一种非常好的格式来显示好的数字

查看一个不知何故的related answer,其中我添加了一些代码来实现这一点,将大数字转换为“千”、“兆”、“千兆”和“泰拉”。你可能想要采用这一点。

票数 3
EN

Stack Overflow用户

发布于 2019-01-22 18:22:30

d3.format(',')(1999222) / output=1,999,222

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15387585

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档