![](/img/trans.png)
[英]How to load my data into a GraphML file for easy use in Prefuse?
[英]How to generate a graphml file in Java. Gephi, JGraph, Prefuse, etc
幫助! 我希望創建一個Java 應用程序,它可以生成以下任一格式的圖形:
我需要能夠在圖形編輯器“ yEd ”中打開文件。
到目前為止,我已經找到了這些解決方案:
我使用的 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();
}
有任何想法嗎? 謝謝!
回答可能為時已晚,但對於第二個解決方案:將圖形導入yEd后,只需單擊“布局”並選擇一個。 yed不會為你選擇一個作為默認值,這就是為什么它似乎是線性的。
我不知道這是否適合您的用例,但我使用neo4j創建圖形,然后使用neo4j-shell-tools將圖形導出為graphml。 也許這對你有用。
只需在代碼中用GraphMLExporter
替換每次出現的GmlExporter
GraphMLExporter
。 這應該工作。
我也想為yED導出JgraphT圖,但對結果不滿意。 因此,我創建了一個擴展的GMLWriter,支持yED的特定GML格式(組,顏色,不同邊緣......)。
我正在使用de Prefuse庫,您可以使用de class GraphMLWriter從Graph對象生成GraphML文件。
我創建了一個小教程/Github Repo和示例代碼,介紹如何使用 JgraphT 的類導出到 GraphML 和 GML,以及結果在 yED 中的樣子。
正如另一個答案中已經提到的,如果您不想自己做太多配置, GML-Writer-for-yED可能會很方便。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.