GoJS Genogram,自定义更改节点顺序

GoJS Genogram, Change node order by custom

在例子中 GoJS Genogram

我只知道如何自定义节点形状、link 样式和一些关于视图的东西。但我不知道如何参与节点的排序,例如:我为所有家庭添加了一个 属性 关于年龄的信息,并希望在 gojs 绘图时按同一代人的年龄排序。

这是 My Example

我怎样才能把大家庭改成自动离开,我以为按键顺序可以解决我的问题,但实际上按键没有任何帮助。

例如。哥哥 -> 点妹 -> 我 -> 小... -> 小...

下面是我主要修改自GoJS Genogram Example

[
  { key: 0, n: "Father", s: "M", ux: 1, a: ["C", "F", "K", "X"] },
  { key: 1, n: "Mother", s: "F", a: ["B", "H", "K", "X"] },
  { key: 4, n: "Me", s: "M", m: 1, f: 0, ux: 5, a: ["ME"] },
  { key: 5, n: "Wife", s: "F", vir: 5, a: ["C"] },
  { key: 2, n: "Old Brother", s: "M", m: 1, f: 0, a: ["E", "H", "X"] },
  { key: 3, n: "Old Sister", s: "F", m: 1, f: 0, a: ["B", "H", "L"] },
  { key: 6, n: "Young Sister", s: "F", m: 1, f: 0, a: ["C"] },
  { key: 7, n: "Young Brother", s: "M", m: 1, f: 0, a: ["C", "I"] },
  { key: 8, n: "Son", s: "M", m: 4, f: 5, vir: 9, a: ["E"] },
  { key: 9, n: "Son's wife", s: "F", vir: 8, a: ["B", "H"] },
  { key: 10, n: "Daughter", s: "M", m: 4, f: 5, a: ["E", "G"] },
  { key: 11, n: "Daughter's husband", s: "F", vir: 10, a: ["B", "J"] },
  { key: 12, n: "grandson", s: "F", m: 8, f: 9, a: ["J"] },
  { key: 13, n: "grand daughter", s: "M", m: 8, f: 9, a: ["B", "H"] },
  { key: 14, n: "grandson", s: "F", m: 10, f: 11, a: ["E", "G"] },
  { key: 15, n: "grand daughter", s: "M", m: 10, f: 11, a: ["F", "H"] },
]

你要求的是将所有同一代的人混合在一起,以便他们按年龄排序,即使他们属于不同的parents。

GenogramLayout 当前使用(并且实际上继承自)LayeredDigraphLayout,旨在 re-order 节点以减少 link 交叉.它不支持对每一层中的所有节点进行排序,这将导致大量交叉 links.

对不起。