我正在使用JFreeChart
API 在我的 Java 应用程序中生成一些图表。在我的一个图表中,我尝试使用该LogAxis
对象通过以下代码使我的 y 轴成为对数刻度轴(图中的 A):
LogAxis logAxis = new LogAxis("Price($)");
logAxis.setMinorTickMarksVisible(true);
logAxis.setAutoRange(true);
xyplot.setRangeAxis(logAxis);
然后我得到一个对数刻度的 y 轴,刻度为 10^n(如图 A)。我想让它像B一样,对用户来说更直观,每个区间代表不同的值,如图,2->4、4->8、8->16,区间增长为2^ n. 较小的一点是,即使它们代表不同的值,间隔也显示同样宽。但是,当 O 尝试通过以下代码实现此目的时:
LogAxis logAxis = new LogAxis("Price($)");
logAxis.setBase(2);
logAxis.setTickUnit(new NumberTickUnit(2));
logAxis.setMinorTickMarksVisible(true);
logAxis.setAutoRange(true);
xyplot.setRangeAxis(logAxis);
我得到的是类似于图C的东西。
我怎样才能达到图B?