我的小提琴:http://jsfiddle.net/G5mTx/10/SVG/Raphael,如何在JavaScript中实现DOT算法? (图组织)
正如你所看到的,我组织节点当前的方式确实不均衡,且有一定的重叠,当父节点有超过1子节点。
对于那些不熟悉的DOT算法,简短的,模糊的解释可以在这里找到:http://www.ece.uci.edu/~jhahn/pdf/dot.pdf
基本上,DOT组织的节点,使得所述图表是最佳的,这意味着它是简洁,具有最小线路交叉,并且是平衡的。
我听说过一些人在发送给客户端之前运行DOT算法服务器端...这会一直更快......但我需要每个节点都有悬停和点击状态,因为我计划允许用户重新分配箭头/线条指向的位置。
我的意思是,我可以做SVG生成服务器端..但是,然后我怎么会悬停/点击事件的节点,并告诉服务器节点表示在线重新分配的模型?
注:我的服务器上运行Ruby on Rails的2.3.8
祝你好运,我试图完成同样的事情(用画布直接操作低级别)。试图将我的头围绕DOT算法... – chocojosh