Sugiyama Layout for Java有好的免费实现吗?

Sugiyama Layout for Java有好的免费实现吗?,java,layout,jung,directed-acyclic-graphs,graph-layout,Java,Layout,Jung,Directed Acyclic Graphs,Graph Layout,我正在使用JUNG库绘制网络图。我还发现了杉山布局的一个实现: 但不幸的是,它的边缘交叉方法似乎不起作用,我无法解决它。节点的垂直对齐几乎是正确的 (除非此JUNG算法没有无错误版本) 有人知道另一个实现吗?只要它是免费的,并且可以包装它,任何Java代码(所以不一定是JUNG)就足够了。 如果有另一种语言的非常好的库,它可以获取一个图形并返回一个带有固定节点位置的graphml文件,这也会有所帮助:)这个布局对我来说很好: 我不得不修改代码,但无法签入:第275行应该是“continue”而

我正在使用JUNG库绘制网络图。我还发现了杉山布局的一个实现: 但不幸的是,它的边缘交叉方法似乎不起作用,我无法解决它。节点的垂直对齐几乎是正确的

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

这个布局对我来说很好:

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

有一个:

它包含经典杉山(包含所有生成的顶点)、Eiglsperger优化(pvertex和qvertex)、一棵八字树、brandes kopf水平对齐、4种分层: (自上而下,最长路径,科夫曼·格雷厄姆,网络单工) 代码位于jungrapht布局模块和jar中,它没有java.awt依赖项,因此更容易与非awt呈现(如JavaFX)一起使用


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

这真的是杉山吗?它只是说它是针对有向无环图的。我将检查它:)不幸的是,它不支持未连接的组件:(…我不太明白它的边交叉最小化的作用。如果这样做后交叉更少,它会变成相邻的节点,对吗?…与重心最小化相比,这不是真的很慢吗?我现在不能测试,因为我只有图形,不能作为输入。。。。