Hallo,

ich erstelle mir gerade mit tikz einen Baum. Dabei möchte ich die childnodes links und rechts anordnen. Jedoch bekomme ich probleme bezüglich meiner gesetzten Anker. Könnt ihr mir da weiterhelfen?

Öffne in Overleaf
Code, hier editierbar zum Übersetzen:
\documentclass[margin=5pt]{standalone}
\usepackage{tikz}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usetikzlibrary{calc}
\tikzset{
my edge from parent fork down/.style={
edge from parent path={
(\tikzparentnode\tikzparentanchor)
-- ($(\tikzparentnode.south)!0.5!(\tikzchildnode.north-|\tikzparentnode.south)$)
-| (\tikzchildnode\tikzchildanchor)
}}
}
\begin{document}
\begin{tikzpicture}[
nodes={
draw,
rounded corners=8pt,
},
root/.style={%
text centered,
text width=7cm,
minimum height=2cm,
font=\LARGE\bfseries,
fill=gray!50,},
first/.style={%
text centered,
text width=7cm,
minimum height=2cm,
anchor=north,
fill=gray!30,
font=\large\bfseries,},
second/.style={%
text centered,
text width=6cm,
minimum height=2cm,
anchor=north,
fill=gray!30,
font=\large,},
 
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

alt text

gefragt 02 Feb '18, 21:23

Giovario's gravatar image

Giovario
413142126
Akzeptiert-Rate: 0%

bearbeitet 03 Feb '18, 09:51

cis's gravatar image

cis
9.6k104462491


Ich weiß, dass es nicht der klassischen Konstruktion eines Baumes entspricht. Ich bin aber ein Fan davon, auch bei Baumdigrammen, die TikZ-Bibliothek matrix zu verwenden.

Das ist m.E. weit übersichtlicher und Abstände, Layout usw. sind einfacher zu manipulieren.

Damit die Matrix selbst übersichtlich bleibt, empfehle ich immer, dort keine ellenlangen Texte reinzuschreiben, sondern die Inhalte in sinnvoll benannten \def- oder \newcommand-Anweisungen abzuspreichern.

Man kann sich zunächst eine Schablone bauen, hier etwa

Öffne in Overleaf
Code, hier editierbar zum Übersetzen:
A & B & C & D & E & F & G \\
A & B & C & D & E & F & G \\
A & B & C & D & E & F & G \\
A & B & C & D & E & F & G \\
A & B & C & D & E & F & G \\
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

und beim Ausfüllen daran orientieren. Im folgenden Beispiel sieht das dann bei mir so aus

Öffne in Overleaf
Code, hier editierbar zum Übersetzen:
& & & \Par & & & \\
& \ParL & & & & \ParR & \\
\ChLiL & & \ChLiR & & \ChRiL & & \ChRiR \\
\ChLiiL & & \ChLiiR & & \ChRiiL & & \ChRiiR \\
& & \ChLiiiR & & & & \\
%A & B & C & D & E & F & G \\
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Hier mal als Workaround:

alt text

Öffne in Overleaf
Code, hier editierbar zum Übersetzen:
%\documentclass[]{article}
\documentclass[border=5pt]{standalone}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
%\usepackage[german]{babel}
\usepackage{tikz}
\usetikzlibrary{matrix}
\begin{document}
\begin{tikzpicture}[
commonstyle/.style={align=center, rectangle, draw, rounded corners},
parentstyle/.style={commonstyle, fill=lightgray, minimum width=12em, minimum height=5em, font=\bfseries},
childstyle/.style={commonstyle, fill=none, minimum width=8em, minimum height=2em,}
]
% Inhalte
\def\Par{|[parentstyle]| Gesenkschmieden}
\def\ParL{|[parentstyle]| {Gesenkschmieden \\ mit teilweise \\ umschlossenem Werkstück}}
\def\ParR{|[parentstyle]| {Gesenkschmieden \\ mit ganz \\ umschlossenem Werkstück}}
\def\ChLiL{|[childstyle]| Bezeichnung}
\def\ChLiR{|[childstyle]| Bezeichnung}
\def\ChLiiL{|[childstyle]| Bezeichnung}
\def\ChLiiR{|[childstyle]| Bezeichnung}
\def\ChLiiiR{|[childstyle]| Bezeichnung}
\def\ChRiL{|[childstyle]| Bezeichnung}
\def\ChRiR{|[childstyle]| Bezeichnung}
\def\ChRiiL{|[childstyle]| Bezeichnung}
\def\ChRiiR{|[childstyle]| Bezeichnung}
\matrix[matrix of nodes, nodes in empty cells,
font=\footnotesize,
nodes={align=center, text width=8em, anchor=center},
inner sep=5pt,
row sep=2em,
%column sep=1em,
] (m)
{
& & & \Par & & & \\
& \ParL & & & & \ParR & \\
 
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Permanenter link

beantwortet 03 Feb '18, 08:25

cis's gravatar image

cis
9.6k104462491
Akzeptiert-Rate: 29%

bearbeitet 05 Feb '18, 10:30

Deine Antwort
[Vorschau ausblenden]

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

Frage-Themen:

×731

gestellte Frage: 02 Feb '18, 21:23

Frage wurde gesehen: 5,720 Mal

zuletzt geändert: 05 Feb '18, 10:30