0

我正在尝试在iReport 5.0.0中创建时间序列图表,并且想要删除 Y 轴和图表中的线条之间的空间,我该怎么做?

我已经有一个定制器类,并试图思考其中的一些值,但没有运气。非常感谢任何帮助。

在 y 轴上添加了一个日期刻度,看起来我的第一个日期是 2011-06-30,但出于某种原因,我的 x 轴从 2011-05-01 开始。

4

2 回答 2

0

在您的图表定制器中,将您的绘图转换为XYPlot(或只是调用chart.getXYPlot()),然后调用setAxisOffset它。此方法设置轴和绘图之间的间隙。 (这里是javadoc)

从 y 轴移除间隙应该像调用一样简单:

plot.setAxisOffset(new RectangleInsets(5.0, 0.0, 5.0, 5.0));

可以通过以下方式消除所有间隙:

plot.setAxisOffset(new RectangleInsets(0.0, 0.0, 0.0, 0.0));

或者

plot.setAxisOffset(RectangleInsets.ZERO_INSETS);

编辑: 默认情况下,绘图将在第一个数据点之前开始。如果您希望数据立即从绘图边缘开始,请调用setMinimumDate您的日期轴,将其设置为与数据集中第一个点相同的值。

于 2013-07-31T11:19:47.207 回答
0

轴现在可以工作了。我这样做了:

Calendar cal = Calendar.getInstance();
cal.set(Calendar.YEAR,2011);
cal.set(Calendar.MONTH,05);
cal.set(Calendar.DAY_OF_MONTH,30);

java.util.Date d = cal.getTime();
domainAxis.setMinimumDate(d);

上述答案已解决。我还将开辟一个关于如何获得系列中的第一个值的新线程。但这将是一个单独的问题。

于 2013-08-01T07:32:47.053 回答