我对这一切都很陌生,所以请耐心等待。
当我移动 id=JK (BB2) 家族的节点时,边不会随之移动。我怎样才能让它看起来像 id=AK (BB1) 家族?
\documentclass{article}
\usepackage[all]{genealogytree}
\begin{document}
\titlepage
\begin{tikzpicture}
\genealogytree[
template=formal graph,
timeflow=right,
%% edge settings
edges={foreground={black,line width=0.5mm},
background={white,line width=1mm}},
]{
child[id=KAK]{
g[id=AndersKristian,male,]{B_1}
child[id=AK]{
g[id=Anne,female]{BB_1}
p[id=Klaus,male]{Y_1}
c[id=Tobias,male]{O_1}
}
child[id=JK]{
g[id=Jytte,female,tikz={xshift=20mm}]{BB_2}
p[id=Kjell,male,tikz={xshift=20mm}]{Y_2}
c[id=Hans,male,tikz={xshift=20mm}]{O_2}
}
}
}
\end{tikzpicture}
\end{document}
答案1
移动节点也会移动连接边,但不会使边缘核心的位置移动,边缘核心的位置仍保持在适当的生成级别。
要改变这个位置,您可以使用edges shift
手册第 219 页第 8.8 节“边缘移动”中记录的内容。
或者,如果这是意图,可以添加幻影节点来模拟代际跳跃。
以下代码显示了这两种选择:
\documentclass{article}
\usepackage[all]{genealogytree}
\begin{document}
\begin{tikzpicture}
\genealogytree[
template=formal graph,
timeflow=right,
%% edge settings
edges={foreground={black,line width=0.5mm},
background={white,line width=1mm}},
]{
child[id=KAK]{
g[id=AndersKristian,male,]{B_1}
child[id=AK]{
g[id=Anne,female]{BB_1}
p[id=Klaus,male]{Y_1}
c[id=Tobias,male]{O_1}
}
child[id=JK,edges shift=-20mm]{
g[id=Jytte,female,tikz={xshift=20mm}]{BB_2}
p[id=Kjell,male,tikz={xshift=20mm}]{Y_2}
c[id=Hans,male,tikz={xshift=20mm}]{O_2}
}
}
}
\end{tikzpicture}
\begin{tikzpicture}
\genealogytree[
template=formal graph,
timeflow=right,
%% edge settings
edges={foreground={black,line width=0.5mm},
background={white,line width=1mm},
anchoring=center},
]{
child[id=KAK]{
g[id=AndersKristian,male,]{B_1}
child[id=AK]{
g[id=Anne,female]{BB_1}
p[id=Klaus,male]{Y_1}
c[id=Tobias,male]{O_1}
}
child
{
g[phantom*]{}
child[id=JK]{
g[id=Jytte,female]{BB_2}
p[id=Kjell,male]{Y_2}
c[id=Hans,male]{O_2}
}
}
}
}
\end{tikzpicture}
\end{document}