GraphML图形的可视化?

时间:2014-02-10 16:40:11

标签: graphml

在Mac OSX或Linux上可视化GraphML中定义的图形的最佳选项是什么?根据{{​​3}},R + iGraph似乎是一个有效的解决方案,但我想知道是否有更简单的解决方案,理想情况下是一个简单的“graphml2png”命令行应用程序。有什么想法吗?

2 个答案:

答案 0 :(得分:8)

我使用yEd,它适用于Linux,Windows和OSX。 此外,它还可以导出为PDF,PNG,SVG,BMP等多种格式

不幸的是,没有命令行支持AFAIK

答案 1 :(得分:7)

我没有完整的食谱,但我可以分享我的想法。

由于图表可以通过多种方式可视化,因此您应该能够以某种方式管理其外观。简单地绘制节点和边缘而不进行任何预处理并不是一个好的选择 - 这种方法会给你一堆随机的边和节点,特别是在大图上。

这是一个示例算法,用于获得图表的干净且具有视觉吸引力的表示:

  1. 在图表上运行一些强制导向算法。
  2. 通过模块化类计算图形模块性并为每个节点着色。
  3. 根据程度改变每个节点的大小。
  4. 如果图形太大,请过滤掉您不感兴趣的节点(可能是程度较低的节点)。
  5. 根据重量更改边缘厚度。
  6. 向节点和边缘添加标签。
  7. 您可以使用Gephi(在手动模式下)执行此类操作。他们还提供Gephi Toolkit应该能够自动化这些东西(不幸的是,我自己还没有尝试过)。所以我尝试编写使用此工具包的简单控制台Java程序。

    以下是使用上述算法可视化的图表示例:

    graph