我与sigma.parsers.cypher.js
插件Linkurious,这似乎奠定了节点通过而unimaginatively分配X和ÿ视工作坐标,它与足够的节点基本上创建随机值一个难以理解的混乱 - 内置于Neo服务器中的图形生成工作做得更好。寻找一个布局算法
在考虑这个问题,算法打下的东西了更好的工作,可能是这样的:
- 选择在(0,0)
- 图中的位置和它的第一个节点选择都直接相关节点和它们定位一个{最小 距离}从父节点远离
- 如果任何两个兄妹比{最小距离}近,从父增加的距离,直到所述同级可充分地分离
- 为每个同级执行小号teps 2 & 3以上
但我想知道有什么我可以利用,所以我不必从头开始写功能?
*更新I *
也许2)选择全部(无子女)直接相关的节点...然后2A)带小孩子节点应该位于距离的两倍+的节点的直径兄弟姐妹(这使房间为其子女)
*更新II *
如果圆的半径是{最小距离}和有比将适合,我们既可以更无子女节点:1)增加半径直到全部e节点适合,或者2)创建第二层
我看着forceAtlas2。它似乎找到了连接数最多的节点,并以明星模式将它们拉出,将其他所有内容都集中在中心。这创造了非常长的边缘,并且仍然非常混乱。你知道Neo4j在内置服务器中使用哪种算法吗?这很漂亮 – ekkis