2011-09-12 67 views
4

我正在用我的應用程序繪製XY圖的幾個圖表。 我在顯示 下方(或上方,左側或右側)的圖例時沒有任何問題。Jfreechart XYPlot,我怎樣才能繪製一個圖例進入繪圖區?

但爲了節省空間,我想繪製一個圖例框到XY-Plot中。

我可以在圖中繪製圖像,文本和線條註釋。

所以我試着從我的LegendTitle做一個TitleAnnotation,並將這個 註釋添加到圖中。

LegendTitle legend = new LegendTitle(plot.getRenderer()); 
    XYTitleAnnotation anno = new XYTitleAnnotation(20.0, 40.0, legend); 
    plot.addAnnotation(anno); 

註釋(20.0,40.0)的座標是在情節的可視區域, 但沒有繪製。

如果我讓圖表對象繪製圖下的圖例,這是做得很好 (但不是我所需要的)。

chart.addLegend(legend); 

所以我認爲LegendTitle對象是正確的。但是爲什麼它不是作爲註釋來繪製的?

我希望有人能夠弄明白這一點或幫助我以不同的方式將圖例繪製到情節區。

+0

我有同樣的問題。你有沒有設法解決它? –

回答

1
+0

謝謝,但沒有任何一個鏈接可以幫助我解決我的問題。 – Une

+0

+1 ['addAnnotation()'](http://www.jfree.org/jfreechart/api/javadoc/org/jfree/chart/plot/XYPlot.html#addAnnotation%28org.jfree.chart.annotations.XYAnnotation ,%20boolean%29)看起來很有前途。 – trashgod

1

如果你希望它是一個XYPlot裏面,我想你需要XYTextAnnotation

+0

我以前從未注意到[多種](http://www.jfree.org/jfreechart/api/javadoc/org/jfree/chart/annotations/XYAnnotation.html)! – trashgod

+0

謝謝,我能夠做文字註釋,但我想要一個完整的圖例與標記和文本。 – Une

+0

在最糟糕的情況下,我會嘗試使用形狀和文本註釋構建自己的圖例。或者有沒有辦法在圖表面板上覆蓋另一個Swing面板? – Une

相關問題