Verhindern Sie, dass sich Tikz-Baumknoten überlappen

Verhindern Sie, dass sich Tikz-Baumknoten überlappen

Ich zeichne mit Tikz Baumstrukturen von Sätzen, bei denen Knoten Wörter enthalten, die manchmal länger sein können. Wenn das passiert, überlappen sie sich wahrscheinlich mit benachbarten Knoten. Wie kann ich Tikz anweisen, einen Mindestabstand zwischen benachbarten Knoten einzuhalten? Mein MWE:

\documentclass{standalone}

\usepackage{tikz}
\tikzset{
  treenode/.style = {align=center, inner sep=3pt, text centered,
    font=\sffamily},
  arn_n/.style = {treenode, rectangle, text width=3em},
  arn_x/.style = {treenode},
  gray-arrow/.style = {draw=gray}
}
\usetikzlibrary{arrows}

\begin{document}
\begin{tikzpicture}[->,>=stealth',level/.style={sibling distance = 10cm/#1,
  level distance = 1cm}] 
\node [arn_n]{NP}
child { node [arn_n] {N'}
    child { node [arn_n] {N'}
        child { node [arn_n] {aa}
            child { node [arn_x] {der}
            }
        }
        child { node [arn_n] {N'}
            child { node [arn_n] {AP}
                child { node [arn_x] {geduldigsten}
                }
            }
            child { node [arn_n] {N'}
                child { node [arn_n] {N}
                    child { node [arn_x] {Konservativen}
                    }
                }
            }
        }
    }
    child { node [arn_n] {N'}
        child { node [arn_n] {aa}
            child { node [arn_x] {unserer}
            }
        }
        child { node [arn_n] {N'}
            child { node [arn_n] {N}
                child { node [arn_x] {Partei}
                }
            }
        }
    }
}
;
\end{tikzpicture}
\end{document}

Gerendertes MWE

In diesem Fall überlappen sich die Knoten, die „unserer“ und „N‘“ enthalten, auf der fünften Ebene. Wie kann man das auf intelligente Weise verhindern?

Antwort1

foresterledigt das für Sie:

\documentclass{standalone}
\usepackage{forest}
\usetikzlibrary{arrows.meta}

\begin{document}
\begin{forest}
for tree={
  treenode/.style = {align=center, inner sep=3pt, 
        text centered, font=\sffamily},
  arn_n/.style = {treenode, rectangle, text width=3em},
  arn_x/.style = {treenode},
  gray-arrow/.style = {draw=gray},
  edge=-{Stealth}}
[NP, arn_n
    [N', arn_n
        [N', arn_n
            [aa, arn_n
                [der, arn_x]]
            [N', arn_n
                [AP, arn_n
                    [geduldigsten, arn_x]]
                [N', arn_n
                    [N, arn_n
                        [Konservativen, arn_x]]]]]
        [N', arn_n
            [aa, arn_n
                [unserer, arn_x]]
            [N', arn_n
                [N, arn_n
                    [Partei, arn_x]]]]]]
\end{forest}
\end{document}

Bildbeschreibung hier eingeben

verwandte Informationen