![TikZ 树结构和 Genealogytree(或其他替代品)](https://linux22.com/image/404935/TikZ%20%E6%A0%91%E7%BB%93%E6%9E%84%E5%92%8C%20Genealogytree%EF%BC%88%E6%88%96%E5%85%B6%E4%BB%96%E6%9B%BF%E4%BB%A3%E5%93%81%EF%BC%89.png)
我正在尝试使用 TikZ 绘制以下“想法谱系”以用于演示文稿:
根据之前的答案,我得到了以下解决方案。
\documentclass[10pt]{standalone}
\usepackage[sfdefault]{FiraSans}
\usepackage[T1]{fontenc}
\renewcommand*\oldstylenums[1]{{\firaoldstyle #1}}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}[scale=0.50,node distance=20mm,every node/.style={rectangle,minimum height=10mm,text width=17mm,align=center,rounded corners=1mm,draw=black,fill={rgb:red,1;green,2;blue,5},fill opacity=0.2,text opacity=1}]
\node at (0,0) (ko) {Kowalski};
\node[above of=ko,node distance=40mm] (le) {Leibniz};
\node[above of=le,xshift=10mm] (ar) {Aristotle};
\node[left of=ar] (ch) {Chrysippus};
\node[right of=ko] (co) {Colmerauer};
\node[above of=co] (po) {Post};
\node[left of=ko] (mc) {McCarthy};
\node[above of=mc] (ta) {Tarski};
\node[left of=mc] (mi) {Minski};
\node[left of=ta,node distance=30mm] (fr) {Frege};
\node[above of=fr] (bo) {Boole};
\node[below of=co,xshift=-5mm,fill=green!50!black] (pr) {Prolog};
\node[below of=pr] (cl) {Clark};
\node[below of=mc,xshift=12mm] (mo) {Moore};
\node[below of=mc,xshift=-12mm] (re) {Reiter};
\node[left of=re] (do) {McDermott Doyle};
\node[below of=mc,node distance=40mm] (ge) {Gelfond Lifschitz};
\node[below of=ge,fill=green!50!black] (ap) {A-Prolog};
\foreach \x/\y in {ar/le,ch/le,le/ko,po/ko,po/co,bo/fr,fr/ta,ta/mi,ta/mc,ta/ko,mc/do,mc/re,mc/mo,mc/ge,mo/ge,ko/pr,co/pr,pr/cl,pr/ge,cl/ge,ge/ap}
\draw[-stealth,shorten >=1mm] (\x) -- (\y);
\end{tikzpicture}
\end{document}
虽然解决方案已经足够,但我对节点的手动布局以及边缘的样式并不是特别满意。我仔细阅读了用于绘制树的各种软件包,并希望得到一些类似于软件包文档中给出的示例的东西。然而,genealogytree
我很难开始,特别是在连接树的层次时(McCarthy 到 McDermott 和 Reiter,也到 Gelfond(也有 Moore 和 Prolog)作为祖先)。
有谁能帮助我开始吗?