java - 添加颜色到自定义边缘

标签 java graph jung

我想向使用 JUNG 库创建的图形的边缘添加颜色。我有自定义边缘类型的边缘,我在其中将标签和权重设置为边缘。

Transformer<CustomEdge, Paint> edgesPaint = new Transformer<CustomEdge, Paint>() {

        private final Color[] palette = {Color.GREEN,
            Color.YELLOW, Color.RED};

        public Paint transform(CustomEdge edgeValue) {
            String stringvalue=edgeValue.toString();
            stringvalue=stringvalue.replaceAll("%","");
            int value=Integer.valueOf(stringvalue);
            if (value<= 10) {
                return palette[0];
            }
            if (value> 10 && value<=20 ) {
                return palette[1];
            }
            else {
                return palette[2];
            }
        }
    };  

以下行返回一条错误消息,指出 edgesPaint 的类型应为 (string,Paint):

visualizationViewer.getRenderContext().setEdgeFillPaintTransformer(edgesPaint);

请帮我解决这个问题。

最佳答案

我猜测您的 VisualizationViewer 被声明为具有边缘类型“String”(即 VisualizationViewer。但如果没有更多上下文,很难确定。

请打印准确的错误消息和堆栈跟踪。显示 VisualizationViewer 的声明也可能会有所帮助。

关于java - 添加颜色到自定义边缘,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7252697/

相关文章:

java - JPQL : inner join with group by

java - 适用于 Eclipse Luna 的 Google 插件?

java - 如何绘制显示鼠标 X 和鼠标 Y 的字符串?

algorithm - 如何有效地从图中生成所有可能的生成树

algorithm - BFS 算法 Introduction to algorithms book by cormen,leiserson etal

algorithm - 如何在没有邻接矩阵的情况下有效地找到图中的连接组件?

java - 使用 SWING + JUNG 刷新图形可视化时无内容

java - 如何将 DirectedSparseMultigraph 显示为树

java - 在哪里处理异常

java - 将 JUNG 图写入图像 : can't reliably render complete graph