我尝试创建一个带有权重的 Java JGraphT 可视化,例如:
现在我想将边标签(例如:(a:b))更改为它的边权重(例如:2)。 我试图在 Javadoc 中搜索但没有看到任何内容。 请帮帮我谢谢!
最佳答案
那些边缘标签来自边缘对象的 toString
方法。因此,您可以创建自己的边类并以产生边权重的方式覆盖 toString
方法。
您可以像这样创建自定义边缘:
class MyWeightedEdge extends DefaultWeightedEdge {
@Override
public String toString() {
return Double.toString(getWeight());
}
}
然后像这样创建你的图,这将使图创建边作为 MyDefaultEdge
的实例,因此在可视化中只显示边权重:
SimpleWeightedGraph<String,MyWeightedEdge> graph
= new SimpleWeightedGraph<String,MyWeightedEdge>(MyWeightedEdge.class);
关于java - 如何通过 JGraphT 可视化表示边权重?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13378519/