我需要创建一个包含两个小图形的图形;我希望它是一个分成两部分的框,每侧都有一个语法树。下面的 MWE 显示了我正在尝试但失败了的操作:
\documentclass{article}
\usepackage{tikz-qtree}
\usepackage{ textcomp }
\newcommand\TR[1]{\textlangle#1\textrangle}
\begin{document}
\begin{figure}[ht]
\fbox{
\begin{minipage}[b]{0.5\linewidth}
\centering
\begin{tikzpicture}
\tikzset{every tree node/.style={align=center,anchor=north}}
\Tree [ .NP [ .vP[DE] { } [ .v' v\\dai [ .VP { } [ .V' V\\\TR{dai} yanjing ] ] ] ] NP\\nanhai ]
\end{tikzpicture}
\caption{default}
\label{fig:figure1}
\end{minipage}
}
\hspace{0.5cm}
\fbox{
\begin{minipage}[b]{0.5\linewidth}
\centering
\begin{tikzpicture}
\tikzset{every tree node/.style={align=center,anchor=north}}
\Tree [ .NP [ .vP[DE] { } [ .v' v\\dai [ .VP { } [ .V' V\\\TR{dai} yanjing ] ] ] ] NP\\nanhai ]
\end{tikzpicture}
\caption{default}
\label{fig:figure2}
\end{minipage}
}
\end{figure}
\end{document}
这段代码创建了两个单独的框,这不是我想要的。
答案1
您可以使用带有诸如分割框之类的线条的表格环境:
\documentclass{article}
\usepackage{tikz-qtree}
\usepackage{ textcomp}
\usepackage{array}
\newcommand\TR[1]{\textlangle#1\textrangle}
\begin{document}
\begin{figure}[ht]
\begin{tabular}{|*2{>{\centering\arraybackslash}p{0.5\linewidth}|}}
\hline
\begin{tikzpicture}
\tikzset{every tree node/.style={align=center,anchor=north}}
\Tree [ .NP [ .vP[DE] { } [ .v' v\\dai [ .VP { } [ .V' V\\\TR{dai} yanjing ] ] ] ] NP\\nanhai ]
\end{tikzpicture}
& \begin{tikzpicture}
\tikzset{every tree node/.style={align=center,anchor=north}}
\Tree [ .NP [ .vP[DE] { } [ .v' v\\dai [ .VP { } [ .V' V\\\TR{dai} yanjing ] ] ] ] NP\\nanhai ]
\end{tikzpicture}\\\hline
\end{tabular}
\end{figure}
\end{document}
如果你需要为每棵树添加标题,你可以使用subcaption
包裹。
或者,您可以将分割矩形节点与 TikZ 一起使用。
答案2
您可以修改两个框之间的间距,使边框重叠。默认情况下,规则的宽度为.4pt
。因此,您将得到:
\documentclass{article}
\usepackage{tikz-qtree}
\usepackage{ textcomp }
\newcommand\TR[1]{\textlangle#1\textrangle}
\begin{document}
\begin{figure}[ht]
\fbox{
\begin{minipage}[b]{0.5\linewidth}
\centering
\begin{tikzpicture}
\tikzset{every tree node/.style={align=center,anchor=north}}
\Tree [ .NP [ .vP[DE] { } [ .v' v\\dai [ .VP { } [ .V' V\\\TR{dai} yanjing ] ] ] ] NP\\nanhai ]
\end{tikzpicture}
\caption{default}
\label{fig:figure1}
\end{minipage}
}%
\hspace{-.4pt}%
\fbox{
\begin{minipage}[b]{0.5\linewidth}
\centering
\begin{tikzpicture}
\tikzset{every tree node/.style={align=center,anchor=north}}
\Tree [ .NP [ .vP[DE] { } [ .v' v\\dai [ .VP { } [ .V' V\\\TR{dai} yanjing ] ] ] ] NP\\nanhai ]
\end{tikzpicture}
\caption{default}
\label{fig:figure2}
\end{minipage}
}
\end{figure}
\end{document}