如何在Jasper报告中删除图表线中的空白线

时间:2019-01-26 18:09:09

标签: jasper-reports jfreechart linechart

我想删除出现在图表线中的水平线作为值,但在图表的属性中找不到正确的选项:

chart line with blank lines

我希望图表看起来像这样:

Chart line without blank lines

1 个答案:

答案 0 :(得分:1)

JasperReports图表元素模型未公开该属性。您需要编写一个图表定制器(或主题),然后进行设置。

定制程序类如下:

package my.code;

import org.jfree.chart.JFreeChart;
import org.jfree.chart.plot.CategoryPlot;

import net.sf.jasperreports.engine.JRAbstractChartCustomizer;
import net.sf.jasperreports.engine.JRChart;

public class LineChartCustomizer extends JRAbstractChartCustomizer
{
    @Override
    public void customize(JFreeChart chart, JRChart jasperChart)
    {
        CategoryPlot plot = chart.getCategoryPlot();
        plot.setRangeGridlinesVisible(false);
    }
}

然后,您需要为图表元素设置定制程序类:

        <lineChart>
            <chart customizerClass="my.code.LineChartCustomizer">
            ...