0

可能重复:
使用 JFreeChart 显示时间序列中的最近更改

在询问之前,我一直在寻找有关我对 JfreeChart 的关注的信息,但我一直无法提出解决方案,如果这个问题已经发布,我很抱歉。

我编写了一个从无线传感器设备接收实时信息的应用程序(每秒从温度传感器读取n 个读数)。为了绘制这些信息,我使用了 JFreeChart 库,特别是 DinamicTimeSeriesCollection 类。

根据此类的功能:“此类针对实时应用程序,在这些应用程序中,我们能够以非常快速的方式附加新数据并丢弃最旧的数据(取决于您的输入数据)”(从JfreeChart 检索:水平滚动 XYBarChart -(图表翻译和导航)),我需要的是不要丢弃已经绘制的信息。我已经看到我可以通过添加一个 JSlider 来水平滚动图表,如前面提到的 url 中所示。但是,我看不到旧值(主要是因为它们已被替换)。

我不确定我是否使用了正确的类,是否有其他库(如 JfreeChart)使绘图“变得如此简单”,或者即使有任何技巧或方法来保留旧值。

非常感谢您的时间。所有可能的帮助将不胜感激。

问候

大卫

4

1 回答 1

0

一个好的方法是将从设备接收的值存储在 2D 列表数组(表示 x,y 坐标)中,并将这些点传递给 JFreeChart,以便在每次接收到新值时进行绘制。至于平移,您可以手动设置窗口JFreeChart.getXYPlot().get[Domain/Range]axis.set[Upper/Lower]Bounds(double value)

于 2012-07-20T04:41:44.973 回答