[Tikz-]Qtree: Richtung eines einzelnen untergeordneten Elements nach links oder rechts erzwingen?

[Tikz-]Qtree: Richtung eines einzelnen untergeordneten Elements nach links oder rechts erzwingen?

Ich versuche, einen Baum zu zeichnen, der interne Knoten mit nur einem untergeordneten Element hat, der aber ausgerichtet sein muss.

    /
    \
    /\
      \
      /\

Anstelle des typischen Qtree, wo die Kinder einfach „hängen“:

    |
    |
   / \
      |
      |
     / \

Ich denke (weiß aber nicht wie), dass es möglich sein könnte, unsichtbare Blätter zu haben, um die Richtung zu erzwingen, aber vielleicht (hoffentlich) gibt es eine bessere Lösung? Diese kann entweder in qtree oder tikz-qtree sein ...

BEARBEITEN: eine Folgefrage, die hilfreich wäre: Wie kann ich jeden Zweig (in einer geraden Linie) deutlich unterscheiden, wenn die Knoten nicht beschriftet sind – d. h., wenn der Baum mehrere Verbindungen in einer Reihe hat, wie im zweiten Beispiel, wie kann ich sie leicht voneinander absetzen, damit sie keine gerade, nicht unterscheidbare Linie bilden?

BEARBEITEN 2: Danke für Ihre Antwort, ich habe jetzt diese beiden Bäume:

  \documentclass[tikz]{standalone}
  \usepackage{tikz-qtree}
  \begin{document}
  \begin{tikzpicture}\footnotesize
    \Tree [ \edge node[midway,left] {000};
          [ \edge[draw=none]; {} \edge node[midway,right] {111};
            [
            \edge node[midway,left] {0}; $U_2$
            \edge node[midway,right] {11};
            [ \edge[draw=none]; {} \edge node[midway,right] {11};
            [ \edge node[midway,left] {0}; $U_1$
                \edge node[midway,right] {1}; $U_3$ ] ] ] ]
          \edge[draw=none]; {}  ]
  \end{tikzpicture}
  \begin{tikzpicture}\footnotesize
    \Tree [ \edge node[midway,right] {$U_1=U_2$, $U_1=U_3$};
          [.. \edge node[midway,right] {$U_1=U_2$, $U_1=U_3$};
          [ \edge node[midway,left] {$0$}; $U_2$ 
              \edge node[midway,right] {$U_1\not=U_2$, $U_1 = U_3$}; [
                  \edge node[midway, right] {$U_1 = U_3$}; 
                  [ \edge node[midway, left] {$0$}; $U_1$
                      \edge node[midway, right] {$U_1\not=U_3$}; $U_3$ ] ] ] ] ]
  \end{tikzpicture}
  \end{document}

Irgendeine Idee, wie man sie besser aussehen lassen kann?

Antwort1

Verwenden Sie einen leeren Knoten {}und platzieren Sie ein \edge[draw=none];davor.

Code

\documentclass[tikz]{standalone}
\usepackage{tikz-qtree}
\tikzset{
    n/.style={draw=none},
    every node/.append style={inner ysep=+0pt,outer ysep=+0pt,minimum size=+0pt}
}
\begin{document}
\Tree
    [.{}
        [.{} 
            \edge[n];[.{} ]
            [.{}
                {} 
                [.{}
                    \edge[n];[.{} ]
                    [.{} 
                        {} 
                        {} 
                    ]
                ]
            ]
        ]
        \edge[n];{} 
    ]
\end{document}

Ausgabe (ohne und mit every nodeaktiviertem Stil)

Bildbeschreibung hier eingeben Bildbeschreibung hier eingeben

Antwort2

xshiftSie können auch (und ) verwenden, yshiftum die Position Ihrer Knoten genau festzulegen.

\documentclass[tikz]{standalone}
\usepackage{tikz-qtree}
\begin{document}
\begin{tikzpicture}\footnotesize
  \Tree [.{a}
      \edge node[midway,left] {1};
      [.\node[xshift=0.5cm,inner sep=0pt,minimum size=0pt] {}; \edge node[midway,left] {2}; {c} ]
  ]
\end{tikzpicture}

verwandte Informationen