異なるサイズのボックスでフローチャートを作成する

異なるサイズのボックスでフローチャートを作成する

tikzpicture でフローチャートを作成するときに問題があります。次の図のようなフローチャートを作成したいのですが:

ここに画像の説明を入力してください

私が見つけた例を使って、ここまで説明しました。

\documentclass[border=10pt]{standalone} 
\usepackage[T1]{fontenc}

\usepackage[utf8]{inputenc}
\usepackage[ngerman]{babel}
\usepackage{verbatim}
\usepackage{tikz}

\begin{document}
\begin{tikzpicture}[sibling distance=25em,
  every node/.style = {shape=rectangle, rounded corners,
 draw, align=center,
  top color=white, bottom color=white}]]
  \node {Absicht}
  child {node {absichtliche Handlung} 
    child {node {Wie viele Handlungen? \\ Wissen ohne Beobachtung}} 
    child {node {Warum-Frage}
        child {node {Zurückweisung}
            child {node {»Ich wusste nicht...«}}
            child {node {»Ich tat es\\ unwillkürlich«}}}
        child {node{Beantwortung}
            child {node {»Einfach so!«}}
            child {node {Motive \\(sind keine mentalen Ursachen.)}
                child {node {Motive im Allgemeinen}}
                child {node {rückwärtsschauende Motive}}
                child {node {vorwärtsschauende Motive}}}}}}

  child {node{Ausdruck der Absicht}};
\end{tikzpicture}
\end{document}

問題は、ボックスが重なり合って、対称的になりすぎて、幅が広くなりすぎることです。また、ボックスのサイズが、ボックス内のテキストの量に応じて自動的に調整されると非常に便利です。コードがそれほど悪くないことを願います...

答え1

兄弟距離と 2 つのノードの幅を変更して少し試した後、次のツリーが得られます。

ここに画像の説明を入力してください

この画像はさらに改善することができます。上のグラフのコードは次のとおりです。

\documentclass[border=10pt,
               tikz]{standalone}
\usetikzlibrary{trees}% <-- new

\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}


    \begin{document}
\begin{tikzpicture}[
every node/.style = {shape=rectangle, rounded corners,
                     draw, align=center, fill=white},              
   level 1/.style = {sibling distance = 12em},% <-- new
   level 2/.style = {sibling distance = 12em},% <-- new
   level 3/.style = {sibling distance = 20em},% <-- new
   level 4/.style = {sibling distance = 11em},% <-- new
                    ]
\node {Absicht}
    [edge from parent fork down]
    child {node {absichtliche Handlung}
        child {node {Wie viele Handlungen? \\ Wissen ohne Beobachtung}}
        child {node {Warum-Frage}
            child {node {Zurückweisung}
                child {node {»Ich wusste nicht...«}}
                child {node {»Ich tat es\\ unwillkürlich«}}}
            child {node{Beantwortung}
                child {node {»Einfach so!«}}
                child {node {Motive \\(sind keine mentalen Ursachen.)}
                    child {node {Motive im Allgemeinen}}
                    child {node {rückwärtsschauende\\ Motive}}% <-- changed
                    child {node {vorwärtsschauende\\ Motive}} % <-- changed
            }}}}
    child {node{Ausdruck der Absicht}};
\end{tikzpicture}
    \end{document}

関連情報