すべてのノードを反復処理しようとしているので、graphviz 用に出力できます。JGraphT ライブラリを使用してそれを行う最善の方法は何ですか?
public static void main(String[] args) {
UndirectedGraph<String, DefaultEdge> g = new SimpleWeightedGraph<String, DefaultEdge>(DefaultEdge.class);
String odp = "ODP";
String cck = "CCK";
String mfe = "MFE";
g.addVertex(odp);
g.addVertex(cck);
g.addVertex(mfe);
g.addEdge(odp, cck);
g.addEdge(odp, mfe);
}
また、エッジの重みを追加するにはどうすればよいですか?
編集:これはかなりうまくいくようです。しかし、より良い方法はありますか?
Set<DefaultEdge> edges = g.edgeSet();
for (DefaultEdge e : edges) {
gv.addln(String.format("\"%s\" -> \"%s\"", g.getEdgeSource(e), g.getEdgeTarget(e)));
}