[英]How can I add horizontal line to bar chart in Jasper Report?
要在条形图上画一条线,请向 CategoryPlot 添加一个ValueMarker 。
在 jasper 报告中,我添加了一个JRChartCustomizer
public class MyChartCustomizer implements JRChartCustomizer {
@Override
public void customize(JFreeChart jfchart, JRChart jrchart) {
CategoryPlot plot = (CategoryPlot) jfchart.getPlot();
//Set at what value you like the line, its color and size of stroke
ValueMarker vm = new ValueMarker(13000,Color.BLUE, new BasicStroke(2.0F));
//add marker to plot
plot.addRangeMarker(vm);
}
}
在jrxml 中确保您的类在类路径中并在图表标签上设置customizerClass
属性
<barChart>
<chart customizerClass="MyChartCustomizer">
....
</chart>
...
</barChart>
如果您使用的是动态报告,则可以直接在代码中添加
chart.addCustomizer(new DRIChartCustomizer() {
private static final long serialVersionUID = 1L;
@Override
public void customize(JFreeChart chart, ReportParameters arg1) {
CategoryPlot plot = (CategoryPlot) jfchart.getPlot();
ValueMarker vm = new ValueMarker(13000,Color.BLUE, new BasicStroke(2.0F));
plot.addRangeMarker(vm);
}
});
如果您使用的是动态碧玉setCustomizerClass
(如在 jrxml 中)
DJBarChartBuilder().setCustomizerClass("MyChartCustomizer");
结果示例
注意:示例中没有使用包名,如果MyChartCustomizer
在一个包中,需要在setCustomizerClass
示例"my.package.MyChartCustomizer"
指明完整的包名
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.