Dostosowywanie etykiet / kleszczy osi logarytmicznej

UżywamJFreeChart API do generowania pewnego wykresu w mojej aplikacji Java. Na jednym z moich wykresów próbuję użyćLogAxis obiekt, aby moja oś y była osią skali logarytmicznej (A na rysunku) za pomocą następującego kodu:

<code>LogAxis logAxis = new LogAxis("Price($)");
logAxis.setMinorTickMarksVisible(true);
logAxis.setAutoRange(true);
xyplot.setRangeAxis(logAxis);
</code>

Następnie otrzymałem oś Y w skali logarytmicznej z kleszczami takimi jak 10 ^ n (jak na rysunku A). Chcę, aby wyglądało to jak B, który jest bardziej intuicyjny dla użytkownika, a każdy przedział reprezentuje różne wartości, jak pokazano na rysunku, 2-> 4, 4-> 8, 8-> 16, interwał rośnie jako 2 ^ n. Coś mniej znaczącego polega na tym, że interwały są wyświetlane równie szeroko, nawet jeśli reprezentują inną wartość. Jednak gdy O spróbujesz to osiągnąć za pomocą następującego kodu:

<code>LogAxis logAxis = new LogAxis("Price($)");
logAxis.setBase(2);
logAxis.setTickUnit(new NumberTickUnit(2));
logAxis.setMinorTickMarksVisible(true);
logAxis.setAutoRange(true);
xyplot.setRangeAxis(logAxis);
</code>

Dostaję coś w rodzaju figury C.

Jak mogę osiągnąć liczbę B?

questionAnswers(3)

yourAnswerToTheQuestion