由于这个较早的问题,我使用强制布局生成了一个静态固定布局图,如下所示d3.js
:
我有两个具体问题需要进一步定制布局:
首先,我注意到确定性地初始化节点位置(例如,在此处对角线完成,有关详细信息,请参阅脚本)固定节点的位置,并且节点的方向似乎取决于此初始化以及力图的尺寸* . 我想知道如何使A, D, E, F, I
上图中的节点水平对齐?换句话说,我想将图形的方向逆时针旋转大约 45 度。我试图在中间水平初始化节点:
nodes.forEach(function(d, i) { d.x = w / size * i; d.y = h / 2; });
但是生成的输出在它们初始化的位置具有水平的所有节点和边缘。
svg
其次,力图在元素内自动居中是真的吗?如果不是,我们怎样才能做到这一点?如果是,我们如何为svg
元素内的力图指定一个中心?
(* 注意:奇怪的是,当设置力图的.size([w, h])
位置w = h
并确定性地沿对角线初始化节点时,所有节点和边都沿输出中的对角线定位,为什么?)