家谱树 同一祖先

家谱树 同一祖先

我尝试构建一个内部有循环/圆圈的家谱树;即有一个节点,其中曾祖父母出现两次。

为了简化问题,我尝试创建一棵树来显示问题:

这里完整版本g-father1和g-father2应该是有相同父母A和B的兄弟。

\documentclass{article}
\usepackage[all]{genealogytree}
\begin{document}
\section{First Test}
\begin{tikzpicture}
\genealogytree{
  parent{
    g{child}
    parent{
      g{father}
      p{g-mother1}
      parent{
        g{g-father1}
        p{A}
        p{B}
      }
    }
    parent{
      g{mother}
      p{g-mother2}
      parent{
        g{g-father2}
        p{A}
        p{B}
      }
    }
  }
}
\end{tikzpicture}
\end{document}

答案1

  • 仅将共同祖先与其中一个家族联系起来。
  • 使用该选项为祖先和另一个孩子分配名字id
  • 使用命令添加缺失的行\draw

在此处输入图片描述

\documentclass{article}
\usepackage[all]{genealogytree}
\begin{document}
\begin{tikzpicture}
\genealogytree{
  parent{
    g{child}
    parent{
      g{father}
      p{g-mother1}
      parent{
        g{g-father1}
        p[id=A,tikz={yshift=4mm}]{A}
        p[id=B,tikz={yshift=4mm}]{B}
      }
    }
    parent{
      g{mother}
      p{g-mother2}
      p[id=g-father2]{g-father2}
    }
  }
}
\draw[green!40!black,line width=1pt] ([xshift=3mm]A.south) -- ++(0,-3mm) -| (g-father2);
\draw[green!40!black,line width=1pt] ([xshift=3mm]B.south) -- ++(0,-3mm) -| (g-father2);
\end{tikzpicture}
\end{document}

相关内容