Java 更改JFreeChart堆叠三维条形图中的自定义颜色

Java 更改JFreeChart堆叠三维条形图中的自定义颜色,java,jfreechart,struts2-jfreechart-plugin,Java,Jfreechart,Struts2 Jfreechart Plugin,我在网上已经搜索够了,但运气不好 我已经创建了一个堆叠的三维条形图,其中我无法更改默认颜色。我尝试了所有提供的建议 下面是我的一小段代码。这是我的意见 我的数据库数据是: A 0 2 B 15 53 C 0 2 D 0 2 E 0 1 F 1 0 G 0 1 即使我使用了setSeriespaint,但它不起作用。 是否与图表、绘图和渲染器中的创建顺序有关 当我打印行和列时,我得到以下结果: row:1 Col:0 row:0 Col:1 r

我在网上已经搜索够了,但运气不好

我已经创建了一个堆叠的三维条形图,其中我无法更改默认颜色。我尝试了所有提供的建议

下面是我的一小段代码。这是我的意见

我的数据库数据是:

A 0 2 B 15 53 C 0 2 D 0 2 E 0 1 F 1 0 G 0 1 即使我使用了
setSeriespaint
,但它不起作用。 是否与图表、绘图和渲染器中的创建顺序有关

当我打印行和列时,我得到以下结果:

row:1 Col:0 row:0 Col:1 row:1 Col:1 row:1 Col:2 row:1 Col:3 row:1 Col:4 row:0 Col:5 row:1 Col:6 行:1 Col:0 行:0 上校:1 行:1 上校:1 行:1 上校:2 行:1 上校:3 行:1 上校:4 行:0 上校:5 行:1 上校:6
您可以覆盖渲染器的
getItemPaint()
,如图所示


垃圾上帝:谢谢,太好了!现在,我可以更改代码中的颜色,但整个条颜色将更改为红色。相反,我更喜欢更改每个堆栈的不同颜色。就像第一层应该是绿色的,第二层应该是黄色的。请给出任何建议。@user2228697:使用
来决定使用什么颜色。@CatalinaIsland有一个正确的想法:制作四个调色板,每个调色板都有一系列相关的颜色,例如绿色、黄色等。;根据
列选择调色板
;这里有一个相关的例子;另请参见所引用的
DrawingSupplier
方法。@trashgod上面您显示的链接真的让我很困惑..我仍然只得到一种颜色,而不是堆叠的3DBAR类型。卡在这里..请编辑您的问题,以包含一个显示您数据小样本的。 row:1 Col:0 row:0 Col:1 row:1 Col:1 row:1 Col:2 row:1 Col:3 row:1 Col:4 row:0 Col:5 row:1 Col:6
plot.setRenderer(new StackedBarRenderer3D() {

    @Override
    public Paint getItemPaint(int row, int col) {
        return Color.getHSBColor(row / 42f, 1, 1);
    }
});