D3:家谱中配偶之间的联系

时间:2013-10-10 12:43:01

标签: javascript svg d3.js tree

以下是代码的链接:http://jsfiddle.net/mj58659094/ADXGu/ ;

现在,家谱只有亲子之间的链接。如何在下面的配偶之间获得链接?

                                        |-----------------------|       
                                  - - - | Father-3 (SMJ)        |       
                               -        |                       |-      
                             -          |-----------------------|  -    
|-----------------------|  -                                        -   
| Father-0 (PMI)        |-              |-----------------------|    -  
|                       |-              | Mother-3 (AJ)         |  -  - 
|-----------------------|  -            | (AJ Nickname)         |-    - 
                            -           |-----------------------|    -  
|-----------------------|   -                                       -   
| Mother-0 (MP)         |  -            |-----------------------|  -    
| (AJ Nickname)         |-              | Mother-3 (MTJ)        | -     
|-----------------------|               | (MTJNickname)         |-      
                                        |-----------------------|       
personId:“1000101”父亲3(SMJ)结婚两次,第一任妻子是人:“1000102”母亲3(AJ),第二任妻子是personId:“1000103”母亲3(MTJ)。任何帮助将不胜感激。感谢。

1 个答案:

答案 0 :(得分:0)

您可以将配偶定位为父亲的子女(D3不关心这一点),但是当您将孩子与父亲联系起来时,配偶将出现在与孩子相同的水平:

Father 0 ---- Spouse 0-0
         ---- Spouse 0-1
         ---- Spouse 0-2
         ---- Father 1 ---- Spouse 1-0
                       ---- Father 2

另一种解决方案可能是将孩子与配偶联系起来:

Father 0 ---- Spouse 0-0 ---- Father 1 ---- Spouse 1-0 ---- Father 2
         ---- Spouse 0-1
         ---- Spouse 0-2

我怀疑你需要一个不同的布局(例如force layout)来表达孩子们有两个父母:

Spouse 0-2
   |
   |
Father 0 ---- Spouse 0-0 
   |    \         /    
   |      Father 1 ------ Father 2
   |          \           /
Spouse 0-1      Spouse 1-0

你可能希望区分从父母到孩子的链接,以及来自丈夫和妻子的链接。