希望您能原谅我没有粘贴代码,但目前代码太多了,我甚至不知道从哪里开始截取示例。让我尝试用文字代替。
让我们假设一条假的男性血统,如 F1、F2、F3、F4、F5、F6(他们都有妻子,等等,但我认为我们现在不需要)。Father1 最年轻,Father6 最年长。
F4 有三个兄弟;B1、B2、B3。
兄弟 B1 和 B2 与来自不同家庭的两个女人结婚,双胞胎女孩;TG1 和 TG2(她们的父母也包括在其中;TGF 和 TGM)。
B1 和 TG1 有一个儿子;S1。
B2 和 TG2 有一个女儿;D1。
S1 和 D1 是表兄弟,可以结婚,你猜怎么着,他们真的结婚了。
S1 和 D1 有三个孩子,由于近亲繁殖,他们都在很早的时候就去世了。
我的主要祖先线 F1-F6 应该使用枢轴保持直线。我希望这个有趣的亲戚故事可以向侧面展开。我该如何实现这一点?
我尝试编写代码,但总是收到无法解码的错误消息。无论我做什么,我都无法得到提示,不知道我做的对不对,也不知道哪里出了问题,要么没有 side-family 也行,要么有 side-family 就完全没有输出。如果有人能让它工作,我想我可以把那个代码和我的代码进行比较,看看我哪里出错了。
编辑:我尝试重写一些符合我描述的代码。但我现在发现它不起作用,我只是不确定如何更改它才能使其起作用。只需删除 B1-B3 兄弟和妻子等,它应该可以编译。
\documentclass[9pt]{report}
\usepackage[a1paper,landscape,layoutoffset={0pt,0pt},hscale=0.85, vscale=0.9, inner=15mm, top=20mm]{geometry}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
%\usepackage[swedish]{babel}
\usepackage{multicol}
\usepackage{graphicx}
\usepackage[space]{grffile}
\usepackage{xcolor}
\usepackage{epstopdf}
\usepackage[all]{genealogytree}
\tcbset{male/.style={colframe=black, colback=blue!06, watermark text=\gtrSymbolsSetDraw{blue!16}\gtrsymMale}}
\tcbset{female/.style={colframe=black, colback=red!07, watermark text=\gtrSymbolsSetDraw{red!17}\gtrsymFemale}}
\gtrset{
processing=fit,
box={segmentation style=solid,colback=white},
level size=2 cm,
node size=1 cm,
level distance=0.75 cm,
child distance=0.25 cm,
parent distance=0.1 cm,
further distance = 2 cm
}
\begin{tikzpicture}
\genealogytree[box={segmentation style=solid,colback=white,leftrule=1mm,rightrule=1mm},
edges={mesh={to path={.. controls +(270:0.5) and +(90:0.5) .. (\tikztotarget)}},no background,foreground={black!52,Circle-Latex,line width=0.6mm}},
timeflow=down,
level size=1 cm,
node size=2 cm,
level distance=0.25 cm,
child distance=0.75 cm,
parent distance=0.1 cm,
further distance = 2 cm
]
{
sandclock
{
parent
{
g[male, id=DEL2]
{
Dan-Erik
}
}
parent
{
g[female, id=AKL2, distance=4 cm]
{
Angsana
}
}
c[neuter]
{
\begin{minipage}{4.5 cm}
\textbf{Latest known name\\(in English/Swedish)\hfill\gtrsymEngaged}
\tcbline
Name when born \\(in Thai if applicable)\\
\gtrsymBorn\, \\
\gtrsymMarried\, \\
\gtrsymDied\, \\
\emph{Optional notes}
\end{minipage}
}
}
}
\genealogytree[
box=
{
segmentation style=solid,
colback=white,
leftrule=2mm,
rightrule=1mm
},
level size=2 cm,
node size=1 cm,
level distance=0.75 cm,
child distance=0.25 cm,
edges=
{
mesh=
{
to path={.. controls +(0:0.5) and +(180:0.5) .. (\tikztotarget)}
},
no background,
foreground={black!52,Circle-Latex,line width=0.6mm}
},
timeflow=right,
adjust position=DEL left of {0,0} distance 1cm,
after tree=
{
\node[font=\scriptsize\itshape,text width=8cm,above right,fill=yellow!5] at ([yshift=15cm]DEL.north) {\gtrSymbolsFullLegend};
}]
{
sandclock
{
c[male, id=OL86]
{
\begin{minipage}{4.5 cm}
Olle
\end{minipage}
}
c[male, id=NL84]
{
\begin{minipage}{4.5 cm}
Nils
\end{minipage}
}
c[female, id=ELL74]
{
\begin{minipage}{4.5 cm}
Emma
\end{minipage}
}
child
{
g[male, pivot, id=DEL, set position=DEL at DEL2]{Dan-Erik Sigurd Lindberg}
}
parent
{
g[female, pivot]
{
Ingrid
}
parent
{
g[male, pivot]
{
Axel
}
}
parent
{
g[female, pivot]
{
Anna
}
parent
{
g[male, pivot]
{
L-P
}
}
parent
{
g[female, pivot]
{
Emma
}
}
}
}
parent
{
g[male, pivot]{Rolf Sigurd Lindberg}
c[female]{Margareta Eman}
c[female]{Monica Björklund}
parent
{
g[male, pivot]{Curt Sigurd Lindberg}
parent
{
g[male, pivot]{Sigurd Lindberg}
}
parent
{
g[female]{Elin Lindberg}
}
}
parent
{
g[female]{Hedvig Lindberg}
parent
{
g[female]{Margareta Warva}
}
parent
{
g[male,pivot]{Holger}
parent
{
g[male,pivot]{Isaac}
parent
{
g[male,pivot]{F2}
parent
{
g[male,pivot]{F3}
parent
{
g[male,pivot]{F4}
child
{
g[male]{B1}
child
{
g[male]{S1}
parent
{
g[female]{TG1}
}
}
}
child
{
g[male]{B2}
child
{
g[male]{D1}
parent
{
g[female]{TG2}
}
}
}
child
{
g[male]{B3}
}
parent
{
g[male,pivot]{F5}
parent
{
g[male,pivot]{F6}
}
}
}
}
}
}
}
}
}
}
}
\genealogytree[box={segmentation style=solid,colback=white,leftrule=1mm,rightrule=2mm},
edges={mesh={to path={.. controls +(180:0.5) and +(0:0.5) .. (\tikztotarget)}},no background,foreground={black!52,Circle-Latex,line width=0.6mm}},
timeflow=left]
{
sandclock
{
child
{
g[male]
{
Attachai
}
}
child
{
g[female, pivot, id=AKL, set position=AKL at AKL2]{Angsana}
}
parent
{
g[male,pivot]
{
Anop
}
parent
{
g[female]
{
Lee
}
}
parent
{
g[male,pivot]
{
?
}
}
}
parent
{
g[female, pivot]
{
Renu
}
parent
{
g[female, pivot]
{
Boonchuai
}
}
parent
{
g[male]
{
Pratuang
}
}
}
}
}
\end{tikzpicture}
\end{document}
答案1
您始终可以使用 tikz 路径“手动”向您的树(或树之间)添加链接...我不确定它是否回答了您的问题(因为说实话我甚至不确定您到底想要实现什么),但也许它可以帮助处于类似情况的其他人:
\begin{tikzpicture}
\genealogytree[template=signpost,box={boxrule=0.4pt,colframe=black!75},edges={foreground={line width=1pt,black,line cap=butt},no background}]{
child{
g{A}
child{
g{B}
c{D}
c[id=e]{E}
}
child{
g[id=c]{C}
c[phantom=1cm]-
c{F}
}
}
}
\draw[color=red,line width=1pt] (c.south) -- (e.north);
\end{tikzpicture}