ヘルプ!これらの形式のいずれかでグラフを生成するJava アプリケーションを作成しようとしています。
- .graphml
- .ygf
- .gml
- .tgf
グラフ エディタ「yEd」でファイルを開くことができる必要があります。
これまでのところ、次の解決策を見つけました。
- Java 用の y ファイル
- 長所:graphmlにエクスポートし、yEdで開くことができ、Javaベースで完璧です。
- 使えない理由: 使うのに2000 ドル以上かかります :( まさに私が必要とするものです
- ゲフィ
- プロ: 無料、graphml へのエクスポート、Java ベース!
- 使用できない理由: 生成された graphml ファイルを yEd で開こうとすると、graphml が壊れています: このスクリーンショットのように 1 行で線形です:
- これで動くようになれば完璧です
- 私が試したグラフは、サンプルプロジェクトを使用して生成されました
- JGraphX
- 長所: グラフを生成できる、Java ベース、無料
- 使えない理由: 生成されたグラフをgraphmlにエクスポートするには? 私はそれを理解できませんでした...
- プレフューズ
- 長所: 無料、グラフ生成、Java ベース
- 使えないもの: graphml しか読めず、graphmlを書けないようです。また、build.sh all で問題なくデモをビルドしましたが、demos.jar を実行しようとすると、「Failed to load Main-Class」というメッセージが表示されました...
- GraphML リーダーおよびライター ライブラリを使用したブループリント( Tinkerpop ?)
- 長所:Java、無料、それでgraphmlをエクスポートできるようです
- 使用できない理由: 混乱しています。リストされている「実装」のいずれかと組み合わせて使用する必要がありますか? これをどのように使用しますか?
- GraphMLExporterを使用したJGraphT
- 長所: グラフを生成でき、Java ベースで、無料で、graphml にエクスポートできると思います
- 使えない理由:エクスポートの仕方がわかりません!生成されたgraphmlをyedで開こうとすると、「yEdで次のエラーが発生しました:ファイルtest.graphmlをインポートできませんでした。」というメッセージが表示されました。サンプルプロジェクトを使用して、これを行いました:
私が使用したJGraphTコード:
UndirectedGraph<String, DefaultEdge> g = new SimpleGraph<String, DefaultEdge>(DefaultEdge.class);
String v1 = "v1";
String v2 = "v2";
String v3 = "v3";
String v4 = "v4";
// add the vertices
g.addVertex(v1);
g.addVertex(v2);
g.addVertex(v3);
g.addVertex(v4);
// add edges to create a circuit
g.addEdge(v1, v2);
g.addEdge(v2, v3);
g.addEdge(v3, v4);
g.addEdge(v4, v1);
FileWriter w;
try {
GmlExporter<String, DefaultEdge> exporter =
new GmlExporter<String, DefaultEdge>();
w = new FileWriter("test.graphml");
exporter.export(w, g);
} catch (IOException e) {
e.printStackTrace();
}
何か案は?ありがとう!