は、私はこの1つのような対数y軸を持つチャートを持っています。ここでは直線軸(デフォルトでは1 xylineChart
を作成する)と同じチャートである:指数目盛りはJFreeChart
LogarithmicAxis
ではないので残念ながら、Y軸上の私の値が指数ティックでフォーマットすることはできません
。どのように私はそれを強制することができますか?
は、私はこの1つのような対数y軸を持つチャートを持っています。ここでは直線軸(デフォルトでは1 xylineChart
を作成する)と同じチャートである:指数目盛りはJFreeChart
LogarithmicAxis
ではないので残念ながら、Y軸上の私の値が指数ティックでフォーマットすることはできません
。どのように私はそれを強制することができますか?
hereのように、DecimalFormat
を設定するにはsetNumberFormatOverride()
を呼び出すことができます。 setExponentSeparator()
メソッドをDecimalFormatSymbols
と呼び出して、目的の指数区切り文字を設定することができます。
DecimalFormatSymbols symbols = new DecimalFormatSymbols();
symbols.setExponentSeparator("e");
DecimalFormat format = new DecimalFormat("0.######E0", symbols);
yAxis.setNumberFormatOverride(format);
また、あなたはhere見setupNumberFmtObj()
のカスタム実装でLogarithmicAxis
のnumberFormatterObj
を変更することができるはずですが、私はそれを試していません。
ありがとう、それは私が探していたものです。 – pioupiou1211
'NumberAxis :: setNumberFormatOverride'? – trashgod
@trashgodそれはあなたにそれを達成するための方法と思われます。私は 'yAxis.setNumberFormatOverride(新しいDecimalFormat(" 0。###### E0 "));を使用しましたが、' 1e5'のように指数を小文字に設定したいと思います。 'E'を' e'に置き換えると、不正な引数エラーになります。ちなみに、投稿することを躊躇しないでください、答えとして私は解決策としてそれをマークすることができます。 – pioupiou1211
@trashgodこれを使うか、 'logarithmicAxis'のダンプを大文字にします。私は何か対称性が欲しい。 – pioupiou1211