Java 条形图设置值轴增量

Java 条形图设置值轴增量,java,jasper-reports,jfreechart,Java,Jasper Reports,Jfreechart,我正在使用JasperReports生成带有图表的报告。其中一个是条形图,我想用20个单位设置轴值的增量 您可以在以下链接中看到我以前的方法: 这是我的自定义程序类: public class BarChartCustomizer extends JRAbstractChartCustomizer { @Override public void customize(JFreeChart jFreeChart, JRChart jrChart) { Ca

我正在使用JasperReports生成带有图表的报告。其中一个是条形图,我想用20个单位设置轴值的增量

您可以在以下链接中看到我以前的方法:

这是我的自定义程序类:

    public class BarChartCustomizer extends JRAbstractChartCustomizer {

    @Override
    public void customize(JFreeChart jFreeChart, JRChart jrChart) {

        CategoryPlot plot = (CategoryPlot) jFreeChart.getPlot();
        plot.setRangeAxisLocation(AxisLocation.BOTTOM_OR_LEFT);
        NumberAxis rangeAxis = (NumberAxis) plot.getRangeAxis();
        NumberFormat numberFormat = NumberFormat.getNumberInstance();
        numberFormat.setMaximumFractionDigits(2);
        numberFormat.setMinimumFractionDigits(2);
        rangeAxis.setNumberFormatOverride(numberFormat);
        BarRenderer barRenderer = (BarRenderer) plot.getRenderer();
        barRenderer.setItemMargin(0.0);
        rangeAxis.setUpperMargin(0.20);
        rangeAxis.setAutoRange(true);
        CategoryAxis categoryAxis = plot.getDomainAxis();
        categoryAxis.setAxisLineStroke(new BasicStroke(2f)); 
        rangeAxis = (NumberAxis) plot.getRangeAxis();
        rangeAxis.setAxisLineStroke(new BasicStroke(2f));
    }
}
我尝试了
rangeAxis.setMinorTickCount(20)没有成功

与往常一样,最终的解决方案将包含在我的GitHub存储库中的示例代码中:

试试这个

rangeAxis.setTickUnit(new NumberTickUnit(20));
另请参见net.sf.jasperreports.chart.range.axis.tick.interval属性(记录于),该属性正是这样做的。

试试这个

rangeAxis.setTickUnit(new NumberTickUnit(20));

另请参见net.sf.jasperreports.chart.range.axis.tick.interval属性(记录在中),它正是这样做的。

太完美了!正如你所说的,太完美了!正如你所说的那样。