6

有人可以给我一个示例,说明如何使用 .graphml 文件中的 Gephi 以编程方式显示图形吗?谢谢。

4

2 回答 2

5

Gephi 已经对他们的文档进行了相当多的升级,并为初学者发布了一个教程:

于 2011-05-09T16:55:43.533 回答
5

这取决于您希望如何显示图表。可能您正在尝试使用 Gephi 导入一个 graphml 文件并以其他格式导出它,例如 png 或 pdf。

您的 Java 类应该执行以下操作:

File graphmlFile = new File("graph.graphml");

//Init a project - and therefore a workspace
ProjectController pc = Lookup.getDefault().lookup(ProjectController.class);
pc.newProject();
Workspace workspace = pc.getCurrentWorkspace();

// get import controller
ImportController importController = Lookup.getDefault().lookup(ImportController.class);

//Import file
Container container = importController.importFile(graphmlFile);

//Append imported data to GraphAPI
importController.process(container, new DefaultProcessor(), workspace);

//Export graph to PDF
ExportController ec = Lookup.getDefault().lookup(ExportController.class);
ec.exportFile(new File("graph.pdf"));

当然,你的 graph.graphml 文件必须包含节点位置的信息,否则所有节点都会被随机放置在可视化区域中。

要更改可视化属性,您必须更改一些 PreviewModel 属性,例如:

PreviewController previewController = Lookup.getDefault().lookup(PreviewController.class);
PreviewModel model = previewController.getModel();
model.getProperties().putValue(PreviewProperty.SHOW_NODE_LABELS, Boolean.TRUE);
于 2012-10-12T14:08:35.970 回答