-
树布局算法(翻译)
大略思路:该算法采纳深度优先的形式遍历整个多叉树。第一步:如果是叶子节点则其 x 坐标等于其左兄弟的 x 坐标加上间距 distance,如果是非叶子节点则其 x 坐标等于其左兄弟的 x 坐标加上间距 distance,同时记录下偏移量(x 坐标与子节点的中点之差)。第二步:将所有的子节点按父节点的偏移量挪动。第三步:计算多叉树的轮廓,如果轮廓值小于 0 则阐明左右子树存在重叠,将右子树偏移该轮廓值。
树图布局 论文 - 英文
http://llimllib.github.io/pymag-trees/
- 老论文
d3 的节点算法
https://github.com/d3/d3-hierarchy/blob/master/src/tree.js
https://github.com/d3/d3-hierarchy/blob/master/src/hierarchy/index.js
类树图力导向图
重点是 y 轴地位,(findex 曾经决定了 x 地位)
http://jxjweb.top/2020/12/14/1.html
http://jxjweb.top/2020/12/14/2.html
http://jxjweb.top/2020/12/14/3.html
http://jxjweb.top/2020/12/14/4.html
// 对树图数据进行解决失去须要的根底点位信息 yindex,xindex 的点 / 线数据