我正在使用JasperReports为我的Web应用程序创建线性图表。
我已经成功地将数据集传递给编译的报表(在iReport中创建),并且可以正确地看到数据。
然而,我想对边距进行一些自定义设置:
1. 在没有边距的情况下,线性图表上显示的数值被修剪了。
2. X轴标签距离Y轴0值有一些空白间隔。我想要移除这个边距,并从X和Y的交点开始绘制X轴。
请参见图片:
https://istack.dev59.com/okod8.webp 我正在使用自定义类,在我的Web应用程序中定义。我能够更改标签的字体大小和旋转,但不知道如何调整边距。
我已经成功地将数据集传递给编译的报表(在iReport中创建),并且可以正确地看到数据。
然而,我想对边距进行一些自定义设置:
1. 在没有边距的情况下,线性图表上显示的数值被修剪了。
2. X轴标签距离Y轴0值有一些空白间隔。我想要移除这个边距,并从X和Y的交点开始绘制X轴。
请参见图片:
https://istack.dev59.com/okod8.webp 我正在使用自定义类,在我的Web应用程序中定义。我能够更改标签的字体大小和旋转,但不知道如何调整边距。
public class LineChartCustomizer implements JRChartCustomizer {
@Override
public void customize(JFreeChart jFreeChart, JRChart jrChart) {
CategoryPlot plot = jFreeChart.getCategoryPlot();
DecimalFormat dfKey = new DecimalFormat("###,###");
StandardCategoryItemLabelGenerator labelGenerator = new StandardCategoryItemLabelGenerator("{2}", dfKey);
LineAndShapeRenderer renderer = new LineAndShapeRenderer();
renderer.setBaseItemLabelsVisible(true);
renderer.setBaseItemLabelGenerator(labelGenerator);
renderer.setBaseItemLabelFont(new java.awt.Font("SansSerif", java.awt.Font.PLAIN, 4));
renderer.setSeriesShape(0, ShapeUtilities.createDiamond(1F));
plot.setRenderer(renderer);
}
}