7

我正在研究绘制思维导图的算法。要点是智能地排列节点,这样就没有重叠,看起来分布很好。作为示例,请参见此屏幕截图(来自MindNode):

它应该是什么样子

考虑到每个节点占用的空间,关于如何很好地安排这个结构的任何想法?你知道我可以研究的任何代码(比graphviz更简单的东西)吗?

在它出现之前,我不是在寻找像这样的“物理模拟”算法,或者像 dot.js这样的完成程序。最后我想在 JS 中实现它,但是为了理解算法,任何语言都可以。

4

1 回答 1

1

我猜你只能用 CSS 来做到这一点。使用 JS 为您的节点提供正确的类,CSS 将根据需要安排它们。

例如,您可以margin: 1em 0 1em 0在每个节点上进行设置,使其有足够的空间等。

于 2012-04-27T22:49:27.663 回答