2

HTML 5 の canvas 要素を使用して JavaScript でプロット関数を作成しようとしています。問題は、Y 軸のラベルを計算する方法です。

たとえば、4 から 96 までの範囲の数値の配列が表示される場合、私にとって、ほとんどのロジック ラベルは 0 から 100 までの範囲で、10 刻みです。

たとえば、最大値が 2375 の上位カテゴリの数値を含む配列を考えると、使用する最大ラベルは 2500 になります。

では、そのようなものをどのように計算しますか?解決策を探していますが、まだ見つかりません。

前もってありがとう、バート

4

1 に答える 1

0

残念ながら、やりたいことを簡単に実現する方法はありません。特定のティック数 (たとえば 10) が必要であることがわかっている場合は、いつでも最大値をティック数で割ることができます。問題は、目盛りラベルが本当にひどいものになることです。たとえば、2375 の場合、237.5 単位ごとにティックが必要になりますが、おそらく 250 単位ごとにティックが必要な場合は、はるかに「より適切」です。これらの適切なラウンド ティック値を取得する唯一の方法は、次のようなロジックを使用することです。

if( maxValue < 100 ) {
  tickValue = 10;
else if( maxValue < 500 ) {
  tickValue = 50;
else if( maxValue < 1000 ) {
  tickValue = 100;
else if( maxValue < 1500 ) {
  tickValue = 150;
} // ...etc
于 2012-04-03T22:18:47.160 に答える