Java JFreeChart DialPlot的GradientBackground

Java JFreeChart DialPlot的GradientBackground,java,swt,jfreechart,Java,Swt,Jfreechart,我正在SWT中使用JFreeChart,并希望将渐变背景设置为拨号图,如前所述。 但我总是有一个白色的背景 GradientPaint gradient = new GradientPaint(new Point(), Color.white, new Point(), Color.darkGray); DialBackground background = new DialBackground(gradient); background.setGradientPaintTransformer(

我正在SWT中使用JFreeChart,并希望将渐变背景设置为拨号图,如前所述。 但我总是有一个白色的背景

GradientPaint gradient = new GradientPaint(new Point(), Color.white, new Point(), Color.darkGray);
DialBackground background = new DialBackground(gradient);
background.setGradientPaintTransformer(new StandardGradientPaintTransformer(GradientPaintTransformType.VERTICAL));

StandardDialFrame frame = new StandardDialFrame();
frame.setBackgroundPaint(Color.lightGray);
frame.setForegroundPaint(Color.darkGray);

// some layers

DialPlot plot = new DialPlot(getDataset());
plot.setDialFrame(frame);
plot.setBackground(background);


有没有关于我做错了什么的建议?

不清楚你的片段哪里出错了。从这个Swing开始,
buildDialPlot()
中的以下更改似乎起作用:

private ChartPanel buildDialPlot(int minimumValue, int maximumValue, int majorTickGap) {
    …
    GradientPaint gradient =
        new GradientPaint(new Point(), Color.white, new Point(), Color.gray);
    DialBackground background = new DialBackground(gradient);
    background.setGradientPaintTransformer(
        new StandardGradientPaintTransformer(GradientPaintTransformType.VERTICAL));
    plot.setBackground(background);

    return new ChartPanel(new JFreeChart(plot)) {…};
}

这可能是SWT桥或代码中其他地方的问题