java - JFreeChart DialPlot 的渐变背景

标签 java swt jfreechart

我正在 SWT 中使用 JFreeChart,并希望按照描述为 DialPlot 设置渐变背景 here 。 但我总是得到白色背景。

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);

The resulting plot.

对我做错了什么有什么建议吗?

最佳答案

目前尚不清楚您的片段哪里出了问题。从这个 Swing 开始examplebuildDialPlot() 中的以下更改似乎有效:

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)) {…};
}

image

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

关于java - JFreeChart DialPlot 的渐变背景,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42782051/

相关文章:

java - 无法将 MS-Excel 列粘贴到 SWT 的文本小部件中

java - 最后一项上的 Jfreechart TimeSeriesChart 标签

java - 从加载的类文件运行方法?

java - Kafka无序消息场景处理

java - 如何获取单选按钮的值?

java - 如何使用 Java 中的 GUI(仅限 SWT)标记矩形的一侧?

java - 将电子邮件从 Outlook 拖到 Java(使用 JNA)

java - 当经过身份验证的用户访问未 protected 页面时,getRemoteUser() 返回 null

java - 在饼图中显示百分比值

android - Afree图表: How to increase X axis values(gap or domain range) while zooming