JFreeChart条形图 - 绘制没有渐变填充的绘图

时间:2014-05-05 00:51:51

标签: colors jfreechart gradient fill

我的条形图始终使用渐变填充绘制。我有一个代码来填充一个不同颜色的系列中的每个栏。我只想要颜色没有任何影响。我查看了之前的一个帖子但是没有用,因为它似乎是为默认的标准代码而设计的。

这是我的代码:

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]); 
 } 
}

任何帮助将不胜感激。

感谢。

1 个答案:

答案 0 :(得分:2)

BarRenderer课程中,您会找到以下方法:

public static void setDefaultBarPainter(BarPainter painter);

它允许您更改默认的条形画家(在创建任何图表之前将StandardBarPainter传递给此方法,并且您的图表将具有不带渐变的条形图。)