在此示例中,我两次使用了同一个.graph
文件,但第二次只使用了其中的一部分。example.formal.graph
示例中的文件是软件包中附带的文件。
\documentclass{article}
\usepackage[all]{genealogytree}
\begin{document}
\begin{genealogypicture}[template=formal graph]
input{example.formal.graph}
\end{genealogypicture}
\bigskip
Here is the left part again:
\begin{genealogypicture}[
template=formal graph,
ignore node={na5},
options for node={na1, na2}{phantom},
ignore subtree={fam_C}
]
input{example.formal.graph}
\end{genealogypicture}
\end{document}
这大概就是我想要的,即能够提取图形文件的一部分。但是,在这里为两个最上面的节点设置幻像是一种不太理想的解决方法,至少因为这会占用空间。我也不能忽略这两个节点,因为这样我会得到一个“无 g 节点”错误。有没有更好的方法可以只使用图形文件中的子树?
答案1
我曾经有过同样的经历,于是开发了一个工具来帮助我解决这个问题。它叫做代代相传并免费提供github.com/jojomi/generations。它从数据库生成 tex 文件,同时使您能够过滤联系人以从单个不变的源生成任意树。
它带有自由选择等选项根人树,限制需要考虑的几代人或者数据类型包括(没有中间名?当然!没有离婚日期?随你喜欢!没有图片?你自己选择!)。你可以更改LaTeX 模板用于创建您需要的输出。
该数据库是一个 yml 文件,尚不支持 GEDCOM(但技术上可以开发)。
单个数据库条目的示例:
- id: PachGerd1954
gender: male
name:
first:
- Gerd
last: Pachowski
birth:
date: "1954-07-04"
place: Bottrop
mom: PachGise1921
dad: PachDiet1919
partners:
- partner_id: "GöhlMela1954"
marriage:
date: "1975-07-01"
divorce:
date: "1990-03-09"