我想隱藏的JFreeChart從傳說項目,我已經試過這個代碼 jFreeChart: How to hide items from legend?JFreeChart的 - 如何從傳說中隱藏的項目 - 顏色問題
它的工作原理,但奇怪的事情發生了:傳奇的色彩項目不再匹配正確的數據。換句話說,在圖表中,一段數據以黃色顯示,但與此項目對應的圖例以另一種顏色顯示。事實上,傳說中的顏色混雜在一起。
此外,當我嘗試顯示新舊圖例時,沒有顏色問題,但是當我將舊圖例隱藏時,會出現混色問題。很顯然,我不想展示舊的傳奇。
工作代碼=>
LegendItemCollection legendItemsOld = localCombinedDomainXYPlot.getLegendItems();
final LegendItemCollection legendItemsNew = new LegendItemCollection();
for(int i = 0; i<4; i++){
legendItemsNew.add(legendItemsOld.get(i));
}
LegendItemSource source = new LegendItemSource() {
LegendItemCollection lic = new LegendItemCollection();
{lic.addAll(legendItemsNew);}
public LegendItemCollection getLegendItems() {
return lic;
}
};
localJFreeChart.addLegend(new LegendTitle(source));
ChartUtilities.applyCurrentTheme(localJFreeChart);
localJFreeChart.getLegend().setVisible(true); ///////////////////
不工作密碼=>
LegendItemCollection legendItemsOld = localCombinedDomainXYPlot.getLegendItems();
final LegendItemCollection legendItemsNew = new LegendItemCollection();
for(int i = 0; i<4; i++){
legendItemsNew.add(legendItemsOld.get(i));
}
LegendItemSource source = new LegendItemSource() {
LegendItemCollection lic = new LegendItemCollection();
{lic.addAll(legendItemsNew);}
public LegendItemCollection getLegendItems() {
return lic;
}
};
localJFreeChart.addLegend(new LegendTitle(source));
ChartUtilities.applyCurrentTheme(localJFreeChart);
localJFreeChart.getLegend().setVisible(false); ///////////////////
[JFreeChart - 有2個傳說的顏色問題]的可能的重複(http://stackoverflow.com/questions/5800774/jfreechart-problem-of-colors-with-2-legends) – trashgod 2011-04-27 17:30:17