我想在使用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);
请帮助我。
答案 0 :(得分:1)
Offhand我猜你的VisualizationViewer被声明为边缘类型为“String”(即VisualizationViewer。但没有更多的上下文,很难确定。
请打印确切的错误消息和堆栈跟踪。显示VisualizationViewer的声明也可能会有所帮助。