在JFreeChart中隐藏TimeSeries图中的连接线

时间:2016-01-08 05:49:19

标签: time-series jfreechart

在时间序列中,存在一定持续时间的时间间隔。绘制图表时,间隙由直线代替。

使用XYLineAndShapeRenderer可以使用以下调用控制项目或行是否可见:

renderer.setSeriesLinesVisible(series, false);
renderer.setSeriesShapesVisible(series, false);

但它会影响整个系列。

我如何避免时间序列图中时间间隔的这条直线?

1 个答案:

答案 0 :(得分:1)

getItemLineVisible(int, int)类中的XYLineAndShapeRenderer中有一个方法 - 此方法返回的值确定是否在当前项和前一项之间绘制线段。默认实现检查linesVisible标志和系列级别的标志:

280    public boolean getItemLineVisible(int series, int item) {
281        Boolean flag = this.linesVisible;
282        if (flag == null) {
283            flag = getSeriesLinesVisible(series);
284        }
285        if (flag != null) {
286            return flag.booleanValue();
287        }
288        else {
289            return this.baseLinesVisible;
290        }
291    }

但是,您可以覆盖此方法并为任何项返回不同的布尔结果。