我有一个可以使用jfreechart绘制的时间序列数据。问题是,随着新数据的进入,图表将根据新的数据集而变化。我用过,在Jfreechart中动态更改Y轴范围
chart.fireChartChanged(); chartPanel.repaint();
问题是,有些数据可能超出Y轴的当前范围,我想知道轴范围如何根据迄今为止的时间序列中的最大值进行更改?谢谢!
我有一个可以使用jfreechart绘制的时间序列数据。问题是,随着新数据的进入,图表将根据新的数据集而变化。我用过,在Jfreechart中动态更改Y轴范围
chart.fireChartChanged(); chartPanel.repaint();
问题是,有些数据可能超出Y轴的当前范围,我想知道轴范围如何根据迄今为止的时间序列中的最大值进行更改?谢谢!
看看Range class。
有很多种方法,如
combine(Range range1, Range range2)
Creates a new range by combining two existing ranges.
expandToInclude(Range range, double value)
Returns a range that includes all the values in the specified range AND the specified value.
shift(Range base, double delta, boolean allowZeroCrossing)
Shifts the range by the specified amount.
你可以使用任何根据您的要求
你甚至可能需要添加下列[根据您的评论]
timeaxis.setAutoRange(true);
timeaxis.setFixedAutoRange(1000.0);
感谢您的回复。当我创建绘图时,我使用Range来设置坐标轴。例如yRange =新的Range()并将其传递给轴。稍后当图表更新新数据时,我更改了yRange,但重新绘制后图表仍旧具有旧范围。还是我需要直接从图表对象中检索它? – Daniel
如果这是一个重复的帐户,您可以请求[合并](http://meta.stackexchange.com/questions/18232/how-can-one-link-merge-combine-associate-two-accounts- users-anonymous-unregiste/73801#73801)您的其他帐户。 – trashgod