2012-08-09 131 views
1

问题是,如何更简单,更有效。 我正在使用jfreechart,我想通过单击鼠标从一点画一条线。 我已经重写了chartMouseClicked来设置开始点,并且在下一次点击结束点之后。 它的工作原理。但是想要看到我的行,从开始点开始,到鼠标光标结束,而第一次单击后,我正在移动光标。我已经通过设置数据集并在我的overrided chartMouseMoved方法中设置渲染器来完成它,但是它在每次移动光标后都创建了许多数据集。我的问题是如何通过用鼠标点击来制作我正在制作的线条的可见预览。 任何人都可以帮助我吗?如何在图表上绘制线条?

回答

1

让jFreechart渲染到屏幕外的图像并使用该图像绘制小部件的背景。然后,您不必担心jFreechart的内部和事件处理;您可以使用标准的Swing/AWT方法来创建一个简单的矢量图形编辑器。

+0

是的,但问题是,这是一个动态图表,每分钟后更新一次,而且这条线就像趋势线一样。它与图表的某些值相关联。如何解决它? – 2012-08-09 13:43:18

+1

在这种情况下,您将不得不找到一种方法使鼠标移动处理程序的代码高效,因为无法限制事件的数量。我建议缓存尽可能多的值,并在更新图表时刷新缓存。 – 2012-08-09 14:26:24

+0

嗯,是否可以渲染线条而不在数据集中存储数据?或者,更好的做法是在图表上绘制一些标准库,例如在处理chartpanel的jpanel上绘制? – 2012-08-10 07:20:22