Dividir la caja en dos

Dividir la caja en dos

Necesito crear una figura con dos figuras pequeñas; Quiero que sea un cuadro dividido en dos, con un árbol de sintaxis ubicado en cada lado. El MWE a continuación muestra lo que estoy intentando y fallando:

\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}

Este código crea dos cuadros separados, que no es lo que quiero.

Respuesta1

Podrías usar un entorno tabular con líneas como un cuadro dividido:

\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}

árboles en una mesa

Si necesita un título para cada árbol, puede utilizar elsubcaptionpaquete.

Alternativamente, puedes usar un nodo rectangular dividido con TikZ.

Respuesta2

Podrías modificar el espacio que estás poniendo entre los dos cuadros para que los bordes se superpongan. Por defecto, el ancho de una regla es .4pt. Entonces obtendrías:

\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}

Árboles en caja dividida

información relacionada