Java Jasper图表自定义程序根据类别值显示垂直线

Java Jasper图表自定义程序根据类别值显示垂直线,java,jasper-reports,jfreechart,linechart,Java,Jasper Reports,Jfreechart,Linechart,我正在使用折线图元素图表向导根据从csv文件读取的数据在JasperReport中显示折线图。折线图很好。对我来说,问题是基于特定类别值显示垂直线标记。我尝试使用多轴图表,并根据需要设置第二个图表。但当我把它结合起来的时候,它要么让我的第一个折线图变得混乱,要么让我的第二个折线图变得水平 所以,我尝试使用图表定制器,导出到jar,将其添加到构建路径中,并将其添加到图表的定制器属性中。但是,它没有显示我想要的。代码如下: public class Lot_VerticalLine implemen

我正在使用折线图元素图表向导根据从csv文件读取的数据在JasperReport中显示折线图。折线图很好。对我来说,问题是基于特定类别值显示垂直线标记。我尝试使用多轴图表,并根据需要设置第二个图表。但当我把它结合起来的时候,它要么让我的第一个折线图变得混乱,要么让我的第二个折线图变得水平

所以,我尝试使用图表定制器,导出到jar,将其添加到构建路径中,并将其添加到图表的定制器属性中。但是,它没有显示我想要的。代码如下:

public class Lot_VerticalLine implements JRChartCustomizer {

    public static void main(final String args) { 
       @SuppressWarnings("unused")
       final Lot_VerticalLine demo = new Lot_VerticalLine();
       //demo.customize(null, null);
    }

    public void customize(JFreeChart jfc, JRChart jrc)  {
        CategoryMarker marker = new CategoryMarker("Category Axis");
        CategoryPlot plot = jfc.getCategoryPlot();

        marker.setLabel("Band Y");
        marker.setPaint(Color.red);
        marker.setOutlinePaint(Color.red);
        marker.setDrawAsLine(true);
        marker.setAlpha(0.5f);
        marker.setLabelAnchor(RectangleAnchor.TOP);
        marker.setLabelTextAnchor(TextAnchor.TOP_CENTER);
        marker.setLabelOffsetType(LengthAdjustmentType.CONTRACT);
        plot.addDomainMarker(marker, Layer.BACKGROUND);
    }

    private void addMarker(Plot plot, Marker marker) {
            ((CategoryPlot) plot).addDomainMarker((CategoryMarker) marker);
            CategoryItemRenderer renderer = (CategoryItemRenderer) ((CategoryPlot) plot).getRenderer();
    }
}

我做错了什么?

我希望
类别标记
键是一个特定的类别键,例如显示的
“category 3”
,而不是轴标签,例如
“category axis”