私は d3.js を使用して、ネットワーク トラフィックに関する情報を効果的に表示しています。視覚化のある時点で、y 軸を使用してバイト数を表示しています。
私は現在、d3.svg.axis().ticks() システムを使用しています。これにより、20000 のような適切な数値が得られます。ただし、kB/MB/etc に変換すると、結果は 19.5 や 9.8 のような厄介な数値になります。(10^c) の倍数ではなく、1024、1048576 などのように (2^(10*c)) の倍数でティックを戻す方法はありますか?
その他の情報/考え:
- svg.axis がペイントの基本を処理してくれることに感謝しており、この機能を置き換えない解決策を見つけたいと考えています。
- 私は、@mbostock と会社の協力が得られる限り、d3 を変更してプル リクエストを送信することにオープンです。
- d3_scale_linearTickRange() 内およびその周辺のコードに焦点を当ててリポジトリをチェックアウトしましたが、他の軸に必要なデフォルトの機能を変更せずに目標を達成する簡単な方法がわかりません。
- 以下に投稿された考えられる回避策が 1 つありますが、それは不正に近いものです。