0

我想用渐变色填充 PieChart3D,我正在使用 JFreeChart 来绘制图形。但它不是用渐变色填充,而是用纯色填充。这是我用来改变颜色的代码。

public void setColor(PiePlot3D plot, PieDataset dataset) {
        GradientPaint gp0 = new GradientPaint(1.0f, 1.0f, Color.BLACK,
                0.3f, 2.1f, Color.lightGray);
        GradientPaint gp1 = new GradientPaint(0.5f, 0.5f, Color.green,
                0.0f, 0.0f, Color.lightGray);
        GradientPaint gp2 = new GradientPaint(0.5f, 0.5f, Color.red,
                0.0f, 0.0f, Color.lightGray);

        List<Comparable> keys = dataset.getKeys();
        int aInt;

        for (int i = 0; i < keys.size(); i++) {
            aInt = i % this.color.length;
            if (i == 0) {
                plot.setSectionPaint(keys.get(i), gp0);
                plot.setBackgroundPaint(gp0);
            }
            if (i == 1) {
                plot.setSectionPaint(keys.get(i), gp1);
            }
            if (i == 2) {
                plot.setSectionPaint(keys.get(i), gp2);
            }
        }
    }

任何人都可以帮我解决这个问题吗?上面的代码适用于条形图,但不适用于饼图...我也尝试过 2D,但没有成功。

4

2 回答 2

0

如果这是您的饼图的开始和结束范围相同的修复图表,那么您可以通过提供正确的 xy 坐标来实现。

于 2011-03-28T14:44:05.120 回答
0

您的饼图是否仍在使用您的颜色,但不是渐变?我问的原因是,如果您看到默认颜色,那么您需要更改绘图位置,以便它不会自动填充部分颜色。我没有在 3D 绘图上这样做,但我需要在 2D 绘图上这样做。

于 2010-03-10T21:49:12.567 回答