1

GoJS Genogram的例子中

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

这是 我的例子

我怎样才能将年长的家庭更改为自动离开,我认为 key order 可以解决我的问题,但实际上 key 对任何事情都没有帮助。

前任。哥哥->命令姐姐->我->年轻...->年轻...

以下是我主要从 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"] },
]
4

1 回答 1

0

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

GenogramLayout 目前是使用(并且实际上继承自)LayeredDigraphLayout 实现的,它旨在重新排序节点以减少链接交叉。它不支持对每一层中的所有节点进行排序,这将导致大量的交叉链接。

对不起。

于 2016-07-22T14:22:14.797 回答