2

線上にデータ ポイントがあり、カーソルがそれらの上を通過すると、そのポイントに関するデータを含むツールチップ div が表示されます。div の html のコードは次のとおりです。

    div.html("The Avengers Box Office: $" + d.Avengers) 

d.Avengers は 207438708 を文字列として返します。d3.jsで大きな数字にコンマを追加する方法はありますか?

私は数千から数億の範囲の値を持っており、それらを読み取るのは難しい場合があります。

ありがとう

4

3 に答える 3

3

解決策: d3 を使用してカンマを追加することはできませんが、プレーンな JavaScript を介して行うことができます: Number.toLocaleString()

// convert Avengers to a Number and use the toLocaleString on it
div.html("The Avengers Box Office: $" + (1*d.Avengers).toLocaleString() ) 

高度な解決策: あなたの主な問題が数値が大きすぎることである場合 (コンマを使用しても)、数値に対して非常に優れた変換関数を作成する必要があります。

  1. 小数を数えて、
  2. 素敵な数字を表示するために本当に素敵なフォーマットを選択してください

大きな数字を「キロ」、「メガ」、「ギガ」、「テラ」に変換するコードを追加した、どういうわけか関連する回答を確認してください。あなたはそれを採用したいかもしれません。

于 2013-03-13T14:48:18.470 に答える
2

返信ありがとうございます。ここで答えを見つけました。コンマを追加するのではなく、数百万または数千の後に M または K を追加します。どちらが実際に良いと思います。

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

于 2013-03-13T16:53:15.747 に答える