我们正在使用jfreechart与Jasper报告,我们正在努力把基准线上的条形图。

如何使用jasper报告来实现这一点?
发布于 2016-02-26 10:34:54
要在jasper中自定义条形图,请创建一个扩展ChartCustomizer的定制器类( JRChartCustomizer )。
public void customize(JFreeChart chart, ChartComponent chartComponent)
{
//get the ploy
CategoryPlot plot = (CategoryPlot) chart.getPlot();
//Now add your markers
ValueMarker vm = new ValueMarker(200); //200 is the position you like it to be
vm.setPaint(Color.RED);
vm.setStroke(new BasicStroke(1));
vm.setLabel("BeanchMark value"); //The label
vm.setLabelAnchor(RectangleAnchor.TOP);
vm.setLabelTextAnchor(TextAnchor.BOTTOM_RIGHT);
plot.addRangeMarker(vm);
}将类添加到类路径中,并在jrxml中设置customizerClass属性
<barChart>
<chart customizerClass="my.package.ChartCustomizer">
....
</chart>
...
</barChart>发布于 2016-02-26 10:34:38
我们已经通过在定制类中使用以下代码来解决这个问题
ValueMarker marker = new ValueMarker(30);
marker.setLabel("Average 30%");
marker.setPaint(Color.black);
plot.addRangeMarker(marker);然而,我们需要改变标签的位置,目前它是显示在行的开头。
发布于 2021-07-02 09:50:25
对于一条水平线,可以使用提供的图表自定义程序:
转到图表->属性->图表(选项卡) ->图表自定义器

在那里,您可以添加一个范围间隔标记,并使用所需的值(在您的示例中为35)使用开始值和结束值来配置它。
这样一条水平线将在你想要的35垂直值中画出来。
https://stackoverflow.com/questions/35649022
复制相似问题