2014-05-05 123 views
0

我的条形图始终使用渐变填充绘制。我有一个代码用不同的颜色填充一系列的每个栏。我只想要颜色没有任何影响。我查看了以前的线程,但这并没有帮助,因为它似乎是为默认标准代码设计的。JFreeChart条形图 - 绘制没有渐变填充的绘图

这里是我的代码:

CategoryPlot plot = chart.getCategoryPlot(); 
plot.setBackgroundPaint(Color.WHITE); 

CategoryItemRenderer renderer = new MyRenderer(); 
plot.setRenderer(renderer); 

class MyRenderer extends BarRenderer 
{ 
private Paint[] barColors; 
public MyRenderer() 
{ 
    this.barColors = new Paint[] { new Color(21, 104, 156), new Color(25, 149, 104), new Color(237, 179,20), 
     new Color(72, 181, 163) }; 
} 
public Paint getItemPaint(final int row, final int column) 
{ 
    // returns color for each column 
    return (this.barColors[column % this.barColors.length]); 
} 
} 

任何帮助将不胜感激。

谢谢。

回答

2

BarRenderer类,你会发现这个方法:

public static void setDefaultBarPainter(BarPainter painter); 

它允许您更改默认的酒吧画家(传递StandardBarPainter这种方法创建任何图表之前,你的图表将有没有梯度条)。