Java 在jfreechart中将新数据点添加到现有数据集中时,xy折线图如何自动更新/重画

Java 在jfreechart中将新数据点添加到现有数据集中时,xy折线图如何自动更新/重画,java,swing,jfreechart,linechart,Java,Swing,Jfreechart,Linechart,我有一个场景,数据(x和y坐标)是动态的。我必须从收到第一个点开始绘制图表。因此,每次输入新数据点时,图形都应自动更新。这应持续一段时间(注意:此处x和y坐标都是双变量,时间根本不被视为变量。我们不知道数据何时输入)。在将数据点添加到现有数据集后,我尝试重新绘制总体图。它成功地工作了。但我注意到了它的一个缺陷。我有一个数据集(比如在特定时间t),顺序如下{(1,1)(2,3)(3,5)(4,7)(2.5,1)}。该图应有一条从点(4,7)到点(2.5,1)的直线。但是点(2.5,1)是从(2,3

我有一个场景,数据(x和y坐标)是动态的。我必须从收到第一个点开始绘制图表。因此,每次输入新数据点时,图形都应自动更新。这应持续一段时间(注意:此处x和y坐标都是双变量,时间根本不被视为变量。我们不知道数据何时输入)。在将数据点添加到现有数据集后,我尝试重新绘制总体图。它成功地工作了。但我注意到了它的一个缺陷。我有一个数据集(比如在特定时间t),顺序如下{(1,1)(2,3)(3,5)(4,7)(2.5,1)}。该图应有一条从点(4,7)到点(2.5,1)的直线。但是点(2.5,1)是从(2,3)和(3,5)连接起来的,我不想要。因此,请建议在出现新数据点时自动更新图表的任何方法。

假设您使用的是
XYSeries
您是否尝试过关闭排序

private static XYDataset createDataset() {
  XYSeries dataset = new XYSeries("A",false,true);
  dataset.add(1,1);
  dataset.add(2,3);
  dataset.add(3,5);
  dataset.add(4,7);
  dataset.add(2.5,1);
  XYSeriesCollection ds = new XYSeriesCollection();
  ds.addSeries(dataset);
  return ds;
} 
您应该能够创建如下图表:


如果您能在绘制数据集时写出数据集的视觉表示形式,我想知道(2.5,1)在线条“创建”的集合中的确切位置。