Sugiyama Layout for Java 是不是有很好的免费实现?

Posted

技术标签:

【中文标题】Sugiyama Layout for Java 是不是有很好的免费实现?【英文标题】:Is there a good free implementation of Sugiyama Layout for Java?Sugiyama Layout for Java 是否有很好的免费实现? 【发布时间】:2013-03-31 16:00:05 【问题描述】:

我正在将 JUNG 库用于网络图。我还找到了 sugiyama 布局的实现:http://sourceforge.net/tracker/?func=detail&aid=2944336&group_id=73840&atid=539121 但不幸的是它的边缘交叉方法似乎不起作用,我无法解决它。节点的垂直对齐几乎是正确的。

(除非没有这个 JUNG 算法的无错误版本) 有谁知道另一种实现?只要它是免费的并且可以包装它,任何 Java 代码(因此不一定是 JUNG)就足够了。 如果有一个非常好的另一种语言的库,它可以获取一个图形并返回一个带有固定节点位置的 graphml 文件,它也会有所帮助:)

【问题讨论】:

【参考方案1】:

这个布局适合我:

http://code.google.com/p/daglayout/

我不得不对无法签入的代码进行修改:第 275 行应该是“继续”而不是“返回”。除此之外,如果您为特定图表提供足够的空间,该算法似乎可以工作。我有一个基于总节点和总树深度的启发式方法。

【讨论】:

这真的是杉山吗?只是说它用于有向无环图。我会检查的:) 不幸的是它不支持未连接的组件:( ...我不太明白它的边缘交叉最小化是做什么的。如果这样做之后交叉点会减少,它会更改为相邻节点,对吧? ...与质心最小化相比,这不是很慢吗?我现在无法测试,因为我只有 图,我无法将其作为输入 ....【参考方案2】:

有一个in this project:

它包含经典的 Sugiyama(包含所有生成的顶点)、Eiglsperger 优化(pvertex 和 qvertex)、splay 树、brandes kopf 水平对齐、4 种分层: (自上而下,最长路径,coffman-graham,网络单纯形) 代码在 jungrapht-layout 模块和 jar 中,它没有 java.awt 依赖项,因此与非 awt 渲染(如 JavaFX)一起使用会更容易。

向下滚动查看图片。代码是here

【讨论】:

以上是关于Sugiyama Layout for Java 是不是有很好的免费实现?的主要内容,如果未能解决你的问题,请参考以下文章

java.lang.NumberFormatException: For input string: “.“

`content_for_layout` 如何在 shopify 中加载内容?

Grid for layout, Flexbox for components Grid 用于布局,Flexbox 用于组件

JSP,能不能像Ruby/Rails/Erb中的yield, layout, content_for一样工作

php facetwp woocommerce image + sale html for layout builder

Memory Layout for Multiple and Virtual Inheritance