Tikz-Qtree 不对称,并且引用标签出现在树的底部而不是顶部

Tikz-Qtree 不对称,并且引用标签出现在树的底部而不是顶部

我最近从 qtree 切换到了 tikz-qtree,但遇到了两个问题:

  1. 这棵树是不对称的。

  2. 引用 (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环境一样,确保示例编号出现在树的顶部,而不是树的底部。

相关内容