为BarChart更改SeriesPaint

时间:2011-07-05 11:50:52

标签: java jfreechart

我需要更改此BarChart中条形的颜色,但它不起作用。我究竟做错了什么 ? 编辑:事实上,它只更改图表中第一个条形的颜色,就好像有多个系列一样。但是,createDataset方法不使用addSeries,它只使用addValue,因此应该只绘制一个Series。或者不是?

EDIT2(已解决):好的,没关系。错误是我使用addValue创建了数据集。我将它更改为setValue并且它可以工作。

  public static JFreeChart createChart(Gruppen gruppe){

    DefaultCategoryDataset dataset = createDataset(gruppe);
    JFreeChart chart = ChartFactory.createBarChart("Altersverteilung",
            "Alter",
            "Anzahl",
            dataset,
            PlotOrientation.VERTICAL, 
            false, 
            true, 
            false);

    CategoryPlot plot = (CategoryPlot)chart.getPlot();
    BarRenderer renderer = (BarRenderer) plot.getRenderer();
    renderer.setDrawBarOutline(false);         
    GradientPaint gp0 = new GradientPaint(0.0f, 0.0f, Color.blue, 0.0f, 0.0f, new Color(0, 0, 64));
    renderer.setSeriesPaint(0, gp0);


    return chart;
}

1 个答案:

答案 0 :(得分:0)

请参阅上面原始问题中的EDIT2。