3
1

Wie kriege ich mit Tikz am besten einen ungewurzelten Baum hin, sodass er wie im 2. Bild aussieht. Mein 1. Versuch ist noch etwas unschön. Auch würde ich gern die beiden Zwischenknoten wie im 2. Bild "ausblenden" können.

Open in writeLaTeX
\begin{tikzpicture}[scale=0.9,level/.style={sibling distance=60mm/#1},grow=right]
\node[circle,draw] (i){$i$}
  child {node[circle,draw] (a) {$ $}
    child {node[grow=down,circle,draw] (j) {$j$}}
    child {node[circle,draw] (c) {$ $}
        child {node[circle,draw] (k) {$k$}}
        child {node[circle,draw] (l) {$l$}}}};

\path (i) -- (a) node [midway, right] {\; a \;};
\path (j) -- (a) node [midway, right] {\; b \;};
\path (a) -- (c) node [midway, left] {\; c \;};
\path (c) -- (k) node [midway, right] {\; d \;};
\path (c) -- (l) node [midway, left] {\; e \;};
\end{tikzpicture}

alt text

alt text

gefragt 12 Mai '14, 23:21

BorrNar's gravatar image

BorrNar
77236
Akzeptiert-Rate: 0%

bearbeitet 15 Mai '14, 21:26

esdd's gravatar image

esdd
17.8k284257


Um Zwischenknoten "auszublenden" kannst du coordinate statt node verwenden.

Den Baum selbst könnte man aus zwei Teilbäumen aufbauen, die man dann einfach miteinander verbindet:

Open in writeLaTeX
\documentclass[tikz,margin=5pt]{standalone}
\begin{document}
\begin{tikzpicture}[scale=0.9,sibling distance=2.5cm]
% linker Teilbaum
\coordinate (a)[grow=left]
        child {node[circle,draw] (i) {$i$}}
        child {node[circle,draw] (j) {$j$}};
% rechter Teilbaum
\coordinate[xshift=2cm](c)[grow'=right]
        child {node[circle,draw] (k) {$k$}}
        child {node[circle,draw] (l) {$l$}};
% Verbindung beider Teilbäume
\draw(a)--node[above]{c}(c);
% Beschriftungen
\path[outer sep=2pt] 
  (i) -- node[above]{a} (a)
  (j) -- node [below]{b} (a)
  (c) -- node[above]{d} (k)
  (c) -- node [below]{e} (l) ;
\end{tikzpicture}
\end{document}

alt text

Permanenter link

beantwortet 13 Mai '14, 00:50

esdd's gravatar image

esdd
17.8k284257
Akzeptiert-Rate: 62%

@esdd Kann man bei deiner Version auch noch ein fünftes Blatt einfügen, das an der Strecke c vertikal nach oben geht?:)

(01 Jun '17, 10:30) Tomate
2

@Tomate Ich habe Deine "Antwort" in einen Kommentar umgewandelt. Hier sind Antworten stets "echte" Antworten, keine Gespräche oder Rückfragen oder Zusatzinfos, sondern Lösungen. Das verbessert die Übersicht erheblich für die Archivierung der Lösungen. Ungewohnt und anders als in Webforen, doch innovativ und nutzbarer. Bemerkungen gern wie hier als Kommentare. In diesem Fall wäre jedoch zu überlegen, ob nicht eine Anschlussfrage sinnvoll ist.

(01 Jun '17, 11:02) saputello

Ich musste bei deiner Graphik als erstes an das spring layout der neuen graphdrawing-Bibliothek denken:

Open in writeLaTeX
\documentclass[tikz]{standalone}
\usetikzlibrary{graphs, graphdrawing, quotes, babel}
\usegdlibrary{force}
\begin{document}
\begin{tikzpicture}
\graph [spring layout, horizontal=root left to root right, nodes={circle, draw}, node distance=2.5cm, root/.style={as=, cut policy=none, draw=none}] {
    {{i, j}-- root left [root] --["c"] root right [root] --{k, l}};
    i --["a"] root left;
    j --["b"'] root left;
    k --["d"'] root right;
    l --["e"] root right;
};
\end{tikzpicture}
\end{document}

Zum Übersetzten muss LuaLaTeX verwendet werden.

alt text

Permanenter link

beantwortet 15 Mai '14, 18:02

sudo's gravatar image

sudo
2.0k51521
Akzeptiert-Rate: 39%

bearbeitet 16 Mai '14, 08:19

1

@sudo Toller Vorschlag! Gerade solche Beispiele helfen beim Verständnis der neuen Möglichkeiten ab Version 3.0.0.

(16 Mai '14, 10:31) esdd
Deine Antwort
Vorschau umschalten

Folgen dieser Frage

Per E-Mail:

Wenn sie sich anmelden, kommen Sie für alle Updates hier in Frage

Per RSS:

Antworten

Antworten und Kommentare

Markdown-Grundlagen

  • *kursiv* oder _kursiv_
  • **Fett** oder __Fett__
  • Link:[Text](http://url.com/ "Titel")
  • Bild?![alt Text](/path/img.jpg "Titel")
  • nummerierte Liste: 1. Foo 2. Bar
  • zum Hinzufügen ein Zeilenumbruchs fügen Sie einfach zwei Leerzeichen an die Stelle an der die neue Linie sein soll.
  • grundlegende HTML-Tags werden ebenfalls unterstützt

Frage-Themen:

×731
×14

gestellte Frage: 12 Mai '14, 23:21

Frage wurde gesehen: 10,278 Mal

zuletzt geändert: 01 Jun '17, 11:22