ソフトウェアで棒(または折れ線)グラフを表示するためのコードを少し書いています。すべてが順調に進んでいます。私が困惑しているのは、Y軸にラベルを付けることです。
発信者は、Yスケールにどれだけ細かくラベルを付けたいかを教えてくれますが、私は「魅力的な」種類の方法でラベルを付ける方法に固執しているようです。私は「魅力的」とは言えませんし、おそらくあなたもそうは言えませんが、それを見るとわかりますよね?
したがって、データポイントが次の場合:
15, 234, 140, 65, 90
そして、ユーザーはY軸に10個のラベルを要求します。紙と鉛筆を少しいじると、次のようになります。
0, 25, 50, 75, 100, 125, 150, 175, 200, 225, 250
したがって、そこには10(0を含まない)があり、最後の1つは最大値(234 <250)をわずかに超えて拡張され、それぞれ25の「適切な」増分です。彼らが8つのラベルを要求した場合、30の増分は見栄えがよいでしょう。
0, 30, 60, 90, 120, 150, 180, 210, 240
ナインはトリッキーだっただろう。たぶん、8か10のどちらかを使用して、それを十分に近いと呼んでも大丈夫でしょう。そして、いくつかのポイントが否定的である場合はどうすればよいですか?
Excelがこの問題にうまく取り組んでいることがわかります。
これを解決するための汎用アルゴリズム(ブルートフォースでも大丈夫です)を知っている人はいますか?すぐにやる必要はありませんが、見栄えがするはずです。