帮助!我想创建一个 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();
}
有什么想法吗?谢谢!
答案 0 :(得分:7)
回答可能为时已晚,但对于第二个解决方案: 将图形导入yEd后,只需单击&#34; Layout&#34;并选择一个。 yed不会选择一个作为默认值,这就是为什么它似乎是线性的。
答案 1 :(得分:2)
我不知道这是否适合您的使用案例,但我使用neo4j创建图表,然后使用neo4j-shell-tools将图表导出为graphml。也许这对你有用。
答案 2 :(得分:2)
只需在代码中用GmlExporter
替换GraphMLExporter
的每一个匹配项。这应该有用。
答案 3 :(得分:2)
我还想为yED导出JgraphT图,但对结果不满意。因此,我创建了一个扩展的GMLWriter,支持yED的特定GML格式(组,颜色,不同边缘......)。
答案 4 :(得分:1)
我正在使用de Prefuse库,您可以使用de class GraphMLWriter从Graph对象生成GraphML文件。