减少 tikz-qtree 树下方的空白

减少 tikz-qtree 树下方的空白

我在论文中加入了句法树。每棵树下面都有大量的空白,这会导致大学编辑部尖叫、嚎叫和呻吟,最终拒绝我的论文,直到我对其进行修复。我该如何删除树下多余的空白?

梅威瑟:

\documentclass{article}
\usepackage{tikz-qtree,tikz-qtree-compat}
\usepackage{gb4e}
\tikzset{every tree node/.style={align=center, anchor=north}}
\begin{document}
The relevant structure in \ref{tree:opt-marker-verb-move} shows the necessary movement for the verb to precede the suffix. XP refers to some unknown structure to which the verb is drawn.

\begin{exe}
\ex
\leavevmode\vadjust{\vspace{-\baselineskip}}\newline %this command makes the example number line up with the top of the tree, rather than the bottom
\begin{tikzpicture}
\tikzset{every tree node/.style={align=center,anchor=north}}
\Tree [.XP \node(XP){}; 
[.\textsc{FocusP} =em 
[.TP
[.vP {} 
[.VP {} 
[.V \node(VERB){puv}; ] 
] ] ] ] ]
\draw[->] (VERB) [in=-90,out=-90,looseness=1.5] to (XP);
\end{tikzpicture}\label{tree:opt-marker-verb-move}
\end{exe}

It is difficult to justify this verbal movement. First, we would have to identify a higher structure in a suitable relationship with the verb to motivate verbal movement. Then we would have to identify features to check that exist on both the new structure and the verb.
\end{document}

答案1

一种选择是用来pgfinterruptboundingbox中断弯曲路径的边界框;然后必须添加一些手动间距(或者,参见下文以避免手动干预):

\documentclass{article}
\usepackage{tikz-qtree,tikz-qtree-compat}
\usepackage{gb4e}
\tikzset{every tree node/.style={align=center, anchor=north}}
\begin{document}
The relevant structure in \ref{tree:opt-marker-verb-move} shows the necessary movement for the verb to precede the suffix. XP refers to some unknown structure to which the verb is drawn.


\begin{exe}
\ex
\leavevmode\vadjust{\vspace{-\baselineskip}}\newline %this command makes the example number line up with the top of the tree, rather than the bottom
\begin{tikzpicture}
\tikzset{every tree node/.style={align=center,anchor=north}}
\Tree [.XP \node(XP){}; 
[.\textsc{FocusP} =em 
[.TP
[.vP {} 
[.VP {} 
[.V \node(VERB){puv}; ] 
] ] ] ] ]
\begin{pgfinterruptboundingbox}
\draw[->] (VERB) [in=-90,out=-90,looseness=1.5] to (XP);
\end{pgfinterruptboundingbox}
\end{tikzpicture}\vspace{30pt}
\label{tree:opt-marker-verb-move}
\end{exe}

It is difficult to justify this verbal movement. First, we would have to identify a higher structure in a suitable relationship with the verb to motivate verbal movement. Then we would have to identify features to check that exist on both the new structure and the verb.

\end{document}

在此处输入图片描述

为了避免手动添加间距,只需在边界框中断后将任何合理的内容(例如,空节点)放置在最低节点下方:

\documentclass{article}
\usepackage{tikz-qtree,tikz-qtree-compat}
\usetikzlibrary{positioning}
\usepackage{gb4e}
\tikzset{every tree node/.style={align=center, anchor=north}}
\begin{document}
The relevant structure in \ref{tree:opt-marker-verb-move} shows the necessary movement for the verb to precede the suffix. XP refers to some unknown structure to which the verb is drawn.


\begin{exe}
\ex
\leavevmode\vadjust{\vspace{-\baselineskip}}\newline %this command makes the example number line up with the top of the tree, rather than the bottom
\begin{tikzpicture}
\tikzset{every tree node/.style={align=center,anchor=north}}
\Tree [.XP \node(XP){}; 
[.\textsc{FocusP} =em 
[.TP
[.vP {} 
[.VP {} 
[.V \node(VERB){puv}; ] 
] ] ] ] ]
\begin{pgfinterruptboundingbox}
\draw[->] (VERB) [in=-90,out=-90,looseness=1.5] to (XP);
\end{pgfinterruptboundingbox}
\node[below=of VERB] {};
\end{tikzpicture}
\label{tree:opt-marker-verb-move}
\end{exe}

It is difficult to justify this verbal movement. First, we would have to identify a higher structure in a suitable relationship with the verb to motivate verbal movement. Then we would have to identify features to check that exist on both the new structure and the verb.

\end{document}

答案2

您可以在命令\useasboundingbox前使用\draw,以避免它影响边界框。必须在下面添加一些额外的空间以放置箭头,因此[yshift=-1.2cm](通过反复试验发现)。

\documentclass{article}
\usepackage{tikz-qtree,tikz-qtree-compat}
\usepackage{gb4e}
\tikzset{every tree node/.style={align=center, anchor=north}}
\begin{document}
The relevant structure in \ref{tree:opt-marker-verb-move} shows the necessary movement for the verb to precede the suffix. XP refers to some unknown structure to which the verb is drawn.

\begin{exe}
\ex
\leavevmode\vadjust{\vspace{-\baselineskip}}\newline %this command makes the example number line up with the top of the tree, rather than the bottom
\begin{tikzpicture}
\tikzset{every tree node/.style={align=center,anchor=north}}
\Tree [.XP \node(XP){}; 
[.\textsc{FocusP} =em 
[.TP
[.vP {} 
[.VP {} 
[.V \node(VERB){puv}; ] 
] ] ] ] ]
\useasboundingbox (current bounding box.north west) rectangle ([yshift=-1.2cm]current bounding box.south east);

\draw[->] (VERB) [in=-90,out=-90,looseness=1.5] to (XP);
\end{tikzpicture}\label{tree:opt-marker-verb-move}
\end{exe}

It is difficult to justify this verbal movement. First, we would have to identify a higher structure in a suitable relationship with the verb to motivate verbal movement. Then we would have to identify features to check that exist on both the new structure and the verb.
\end{document}

在此处输入图片描述

答案3

通过调整绘制命令中的 out 值,我能够消除大部分空白。我将其从 -90 改为 -180,并实现了所需的间距。

相关内容