2012-08-09 162 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