1

我使用 JFreeChart 创建了一个XYBarChart,并且我想知道是否可以使绿色条形半透明,如果它后面隐藏着另一组条形。换句话说,也许只改变蓝色条顶部的绿色条的不透明度?

在此处输入图像描述

4

1 回答 1

0

大多数渲染器实现都有一个getItemPaint()AbstractRenderer.getItemPaint(). 此方法返回Paint用于绘制的特定项目(条)。您可以在自己的渲染器类中重写此方法,并实现确定条形颜色和透明度所需的任何逻辑。

有关示例,请参阅JFreeChart 论坛上的此帖子或在论坛中搜索更多示例。基本上这只是:

class CustomRenderer extends BarRenderer
{


    public Paint getItemPaint (int row, int column)
    {
        if (/* something */) {
            Paint mySpecialColor = new Color(0.0f, 1.0f, 0.0f, 0.5f);
            return mySpecialColor;
        }

        // else just return the "normal" paint for the series
        return getSeriesPaint(row);
    }
}

hth,
-马丁

于 2013-09-10T06:53:04.823 回答