所以我有3个不同的时间序列折线图:如何绘制另一个时间序列,而不在JFreeChart的影响当前的时间序列
由于“电压”行就是代表实时数据和全“高”和 “低”系列实际上是从文件中动态加载的(每当用户点击LOAD按钮时)。
这里的问题是,如果我从CSV文件中加载整个“高”和“低”系列,然后在实时数据到来时绘制它,它将只显示“高” “和”低“系列,然后我们必须等待那段时间内的实时数据(这是可以理解的)。
然后,我的想法解决这个问题是从“电压”系列的第一个点的时间段到当前日期轴的最大时间段时添加“高”和“低”一个新的“电压”系列。
public void add(Data data) throws ParseException, CloneNotSupportedException {
Date date = new SimpleDateFormat(PATTERN).parse(data.getDate());
Millisecond milis = new Millisecond(date);
timeSeries.add(milis, data.getNumber());
Date maxDate = axis.getMaximumDate();
Date minDate = dataset.getSeries(0).getTimePeriod(0).getStart();
Millisecond maxMili = new Millisecond(maxDate);
Millisecond minMili = new Millisecond(minDate);
// highSeries and lowSeries are loaded from csv file
TimeSeries tempHighSeries = highSeries.createCopy(minMili, maxMili);
TimeSeries tempLowSeries = lowSeries.createCopy(minMili, maxMili);
TimeSeriesCollection collection = new TimeSeriesCollection();
collection.addSeries(tempHighSeries);
collection.addSeries(tempLowSeries);
plot.setDataset(1, collection);
}
结果就是上面的图片。不过,我真正想要的是这样的:
我希望用户仍然可以看到这些边缘的下一部分(当“高”和“低”系列中的下一分不中,实时数据的范围)
任何指针?
为什么不将高/低数据与实时电压数据合并为后者? – trashgod
您能否以一些代码行为例给我更多细节? – Forrest
是的,为[示例](http://stackoverflow.com/a/13205322/230513)添加数据到'process()'的实现中。 – trashgod