我最近从 qtree 切换到了 tikz-qtree,但遇到了两个问题:
这棵树是不对称的。
引用 (1) 出现在树的底部,而不是顶部
我很感激您提出任何建议?
\documentclass[12pt]{article}
\usepackage[swedish, english]{babel}
\usepackage{tikz-qtree-compat}
\usepackage{tikz}
\usepackage{tikz-qtree}
\usepackage{covington}
\usepackage[natbibapa]{apacite}
\newcommand{\superscript}[1]{\ensuremath{^{\textrm{#1}}}}
\newcommand{\subscript}[1]{\ensuremath{_{\textrm{#1}}}}
\begin{document}
\begin{example} \label{tree12}
\begin{tikzpicture}
\tikzset{every tree node/.style={align=center,anchor=north}}
\Tree [.vP
\qroof{Manne}.DP
[
[.\node(v){v\\vedt}; ]
[.ApplP
\qroof{maanide}.DP
[
[.\node(A){t{\scriptsize {\subscript {Appl}}}}; ]
[.VP
\node(V){t{\scriptsize {\subscript V}}};
\qroof{sijjen tjohph}.DP ]
] ] ] ] ]
\draw[semithick,->] (V)..controls +(south west:1) and +(south:1)..(A);
\draw[semithick,->] (A)..controls +(south west:4) and +(south:1)..(v);
\end{tikzpicture}
\end{example}
\end{document}
答案1
如果您愿意使用该forest
软件包,我认为您可能会得到更接近您想要的东西。该forest
软件包在对齐树中的节点方面做得更好,所以我认为您会得到看起来更“对称”的东西。语法略有不同,而且该软件包也比 强大得多tikz-qtree
。我强烈建议您阅读forest
手动的。
平均能量损失
\documentclass[12pt]{article}
\usepackage{amsmath} % need for the \text command
\usepackage{forest}
\forestset{
% This style is defined on page 8 of the current forest manual
sn edges/.style={for tree={parent anchor=south, child anchor=north}},
% This style is defined on page 52 of the current forest manual
nice empty nodes/.style={for tree={calign=fixed edge angles},delay={where content={}{shape=coordinate,for parent={for children={anchor=north}}}{}}}
}
\usepackage[swedish, english]{babel}
\usepackage{covington}
\usepackage[natbibapa]{apacite}
\begin{document}
\begin{example}
\begin{forest}
sn edges, nice empty nodes, baseline
[vP,
[DP
[Manne, triangle]
]
[
[v
[vedt, triangle, name=vedt]
]
[ApplP
[DP
[maanide, triangle]
]
[
[t$_{\text{Appl}}$, name=tappl]
[VP
[t$_{\text{V}}$, name=tv]
[DP
[{sijjen tjohph}, triangle]
]
]
]
]
]
]
\draw[semithick,->] (tv) [in=-90,out=-135,looseness=1] to (tappl);
\draw[semithick,->] (tappl) [in=-135,out=-90,looseness=2.5] to (vedt);
\end{forest}
\end{example}\label{tree12}
\end{document}
输出
解释
sn edges
使用全局定义的样式确保\forestset
分支连接在树叶(或节点)的底部。
定义的样式nice empty nodes
确保空节点不会导致树中出现空白;相反,树的分支会继续向下延伸到下一个叶子(或节点)。
该baseline
选项与tikzpicture
环境一样,确保示例编号出现在树的顶部,而不是树的底部。