JFreeChart BarRenderer仅显示GradientPaint的第一种颜色

时间:2017-12-21 08:47:17

标签: java jfreechart

我正在尝试将GradientPaint用于我的堆积条形图以突出显示所选系列,但只显示Color的第一个GradientPaint

GroupedStackedBarRenderer barRenderer = new GroupedStackedBarRenderer();
...
GradientPaint gp1 = new GradientPaint(
                        5, 5, Color.blue,
                        10, 5, Color.black,
                        true
                    );
barRenderer.setSeriesPaint(types.indexOf(t), gp1);

我错过了什么,或者它不能用于JFreeChart?

1 个答案:

答案 0 :(得分:2)

在致电setSeriesPaint()时,请确保为Paint中的每个所需密钥指定相同的KeyToGroupMap。在下面所示的StackedBarChartDemo4变体中,Paint的相同变体应用于每个第四个键,标记为" US"在传奇中。

Paint p1 = new GradientPaint(
    0, 0, Color.blue,
    0, 0, Color.black,
    true
);
renderer.setSeriesPaint(0, p1);
renderer.setSeriesPaint(4, p1);
renderer.setSeriesPaint(8, p1);

image