我定制了一个Graphviz点文件来产生这样的输出。目前我正在使用Ruby脚本从 .gedcom 文件中生成它。
![在此处输入图像描述](https://i.stack.imgur.com/8ThNO.jpg)
这里的 .dot 内容,带有数字的节点只是点并且以正确的方式流动边缘。
digraph G {
graph [nodesep=0.2,splines=ortho,ranksep=0.05]
node [shape=box,fontname=Helvetica,fontsize=8;color="green",fixedsize=true,width=1,height=0.5,style=filled]
Grandfather [color="lightblue"]
Grandmother [color="pink"]
StephGrandmother [color="pink"]
Father [color="lightblue"]
Mother [color="pink"]
Uncle [color="lightblue"]
Laurent [color="lightblue"]
Child2 [color="lightblue"]
Child3, Child4 [color="pink"]
node[label="", width=0, height=0];
edge[arrowhead=none, color=blue];
{rank=same;StephGrandmother;Grandfather;Grandmother;Grandfather1}
{rank=same;Father;Father1;Mother;Uncle}
{rank=same;Laurent;Child2;Child3,Child4}
{rank=same;Father2;Father3}
StephGrandmother:e -> Grandfather:w
Grandfather:e -> Grandfather1
Grandfather1 -> Grandmother:w
Grandfather1 -> Grandfather2
Grandfather2 -> Father:n
Grandfather2 -> Uncle:n
Father:e -> Father1
Father1 -> Mother:w
Father1 -> Father2
Father2:w -> Laurent:n
Father2:w -> Child2:n
Father2 -> Father3
Father3:e -> Child3:n
Father3:e -> Child4:n
}