tikzpicture-Verschiebung von Verbindungslinien

Tabellen und Grafiken erstellen und anordnen


pauabaer
Forum-Fortgeschrittener
Forum-Fortgeschrittener
Beiträge: 63
Registriert: Sa 19. Sep 2015, 00:17

tikzpicture-Verschiebung von Verbindungslinien

Beitrag von pauabaer »

Hallo Leute,
ich habe folgende Abbildung mit tikzpicture erstellt:
\documentclass{article}

\usepackage[latin1]{inputenc}
\usepackage{tikz}
\usetikzlibrary{shapes,arrows}
\usepackage{wrapfig}
\usepackage{blindtext}
\begin{document}
\pagestyle{empty}


% Define block styles
\tikzstyle{block} = [rectangle,  draw,
text width=14.5em, text centered, minimum height=3em]
\tikzstyle{decision} = [rectangle, draw, text width=30em, text badly centered, rounded corners, minimum height=3em]
\tikzstyle{vertikal} = [rectangle, text width=9.5em, text centered, minimum height=3em]
\tikzstyle{unter} = [rectangle, text width=9.5em, text centered, minimum height=3em]
\tikzstyle{arrow} = [draw, -latex]
\tikzstyle{line} = [draw]
\tikzstyle{blank} = [node distance=0.8cm]


\begin{tikzpicture}[node distance = 1.8cm, auto]
% Nodes
\node [decision] (Ausgang) {Gestörter Bauablauf};
\node [block, below of=Ausgang] (Art) {Behinderung im baubetrieblichen Sinn};
\node [unter, below of=Art] (Besch) {Beschleunigung};
\node [unter, left of=Besch, node distance=3cm] (Verz) {Verzögerung/ Unterbrechung};
\node [unter, right of=Besch, node distance=3cm] (Bauzeit) {Bauzeit-\\verschiebung};
\node [vertikal, left of=Verz, rotate=90, node distance=2cm](VB){Art der Störung};
\node [block, below of=Besch] (Verursacher) {Störungsverursacher};
\node [unter, below of=Verursacher] (AN) {AN};
\node [unter, left of=AN, node distance=1.5cm] (AG) {AG};
\node [unter, right of=AN, node distance=1.5cm] (neutral) {Neutral};
\node [vertikal, left of=AG, rotate=90, node distance=3.5cm](VB){Verantwortungs-\\bereich};

% Verbindungslinien
\path [line] ([xshift=-16cm]Ausgang) |- (Art);
\path [line] (Verursacher) -- (AN);
\path [line] (Verursacher) -- (AG);
\path [line] (Verursacher) -- (neutral);
\path [line] ([xshift=-48cm]Ausgang) |- (Verursacher);
\path [line] (Art) -- (Verz);
\path [line] (Art) -- (Besch);
\path [line] (Art) -- (Bauzeit);

\end{tikzpicture}

\end{document}
Die Verbindung vom Ausgangspunkt zu den einzelnen "Blöcken" habe ich durch den xshift-Versatz bereits geschafft. Allerdings sieht das nicht sauber aus und es ist auch nicht der gleiche Startpunkt im Ausgangspunkt.
Kann man das irgendwie vereinheitlichen? Bzw. sauberer gestalten?

Gruß
pauabaer

Beinschuss
Forum-Meister
Forum-Meister
Beiträge: 808
Registriert: Di 2. Okt 2012, 21:42
Wohnort: NRW

Beitrag von Beinschuss »

Z.B. so:
\documentclass{article}

\usepackage[latin1]{inputenc}
\usepackage{tikz}
\usetikzlibrary{shapes,arrows}
\usepackage{wrapfig}
\usepackage{blindtext}
\begin{document}
\pagestyle{empty}


% Define block styles
\tikzstyle{block} = [rectangle,  draw,
text width=14.5em, text centered, minimum height=3em]
\tikzstyle{decision} = [rectangle, draw, text width=30em, text badly centered, rounded corners, minimum height=3em]
\tikzstyle{vertikal} = [rectangle, text width=9.5em, text centered, minimum height=3em]
\tikzstyle{unter} = [rectangle, text width=9.5em, text centered, minimum height=3em]
\tikzstyle{arrow} = [draw, -latex]
\tikzstyle{line} = [draw]
\tikzstyle{blank} = [node distance=0.8cm]


\begin{tikzpicture}[node distance = 1.8cm, auto]
% Nodes
\node [decision] (Ausgang) {Gestörter Bauablauf};
\node [block, below of=Ausgang] (Art) {Behinderung im baubetrieblichen Sinn};
\node [unter, below of=Art] (Besch) {Beschleunigung};
\node [unter, left of=Besch, node distance=3cm] (Verz) {Verzögerung/ Unterbrechung};
\node [unter, right of=Besch, node distance=3cm] (Bauzeit) {Bauzeit-\\verschiebung};
%\node [vertikal, left of=Verz, rotate=90, node distance=2cm](VB){Art der Störung};
% Die Beschriftung kannst Du direkt an die Linie setzen.  
\node [block, below of=Besch] (Verursacher) {Störungsverursacher};
\node [unter, below of=Verursacher] (AN) {AN};
\node [unter, left of=AN, node distance=1.5cm] (AG) {AG};
\node [unter, right of=AN, node distance=1.5cm] (neutral) {Neutral};
\node [vertikal, left of=AG, rotate=90, node distance=3.5cm](VB){Verantwortungs-\\bereich};

% Verbindungslinien
\path [line] ([xshift=.8cm]Ausgang.south west) |- 
		node[above, rotate=90, xshift=-.5cm]{Art der Störung}
    	(Art);
\path [line] (Verursacher) -- (AN);
\path [line] (Verursacher) -- (AG);
\path [line] (Verursacher) -- (neutral);
\path [line] ([xshift=.8cm]Ausgang.south west) |- (Verursacher);
\path [line] (Art) -- (Verz);
\path [line] (Art) -- (Besch);
\path [line] (Art) -- (Bauzeit);

\end{tikzpicture}

\end{document}

pauabaer
Forum-Fortgeschrittener
Forum-Fortgeschrittener
Beiträge: 63
Registriert: Sa 19. Sep 2015, 00:17

Beitrag von pauabaer »

.south west ist es :)

Dank dir! Auch für den Tipp mit der direkten Beschriftung der Linie.

pauabaer
Forum-Fortgeschrittener
Forum-Fortgeschrittener
Beiträge: 63
Registriert: Sa 19. Sep 2015, 00:17

Beitrag von pauabaer »

Hallo Leute,
ich muss hier nochmal einhaken.
Die Abbildung sprengt doch schon sehr den Rahmen was die Größe angeht (was die Darstellung als solches angeht bin ich auch noch am hadern :lol: )

Auf jeden Fall wollte ich euch fragen, wie ich die Abbildung als Ganzes skalieren kann um mehr Text auf die Seite bringen zu können?!
\documentclass{article} 

\usepackage[latin1]{inputenc} 
\usepackage{tikz} 
\usetikzlibrary{shapes,arrows} 
\usepackage{wrapfig} 
\usepackage{blindtext} 
\begin{document} 
	\pagestyle{empty} 
	
	
	% Define block styles 
	\tikzstyle{block} = [rectangle,  draw, 
	text width=14.5em, text centered, minimum height=3em] 
	\tikzstyle{decision} = [rectangle, draw, text width=30em, text badly centered, rounded corners, minimum height=3em] 
	\tikzstyle{vertikal} = [rectangle, text width=9.5em, text centered, minimum height=3em] 
	\tikzstyle{unter} = [rectangle, text width=9.5em, text centered, minimum height=3em] 
	\tikzstyle{arrow} = [draw, -latex] 
	\tikzstyle{line} = [draw] 
	\tikzstyle{blank} = [node distance=0.8cm] 
	
	
	\begin{tikzpicture}[node distance = 1.8cm, auto] 
	% Nodes 
	\node [decision] (Ausgang) {Gestörter Bauablauf}; 
	\node [block, below of=Ausgang] (Art) {Behinderung im baubetrieblichen Sinn}; 
	\node [unter, below of=Art] (Besch) {Beschleunigung}; 
	\node [unter, left of=Besch, node distance=3cm] (Verz) {Verzögerung/ Unterbrechung}; 
	\node [unter, right of=Besch, node distance=3cm] (Bauzeit) {Bauzeit-\\verschiebung}; 
	\node [block, below of=Besch] (Verursacher) {Störungsverursacher}; 
	\node [unter, below of=Verursacher] (AN) {AN}; 
	\node [unter, left of=AN, node distance=1.5cm] (AG) {AG}; 
	\node [unter, right of=AN, node distance=1.5cm] (neutral) {Neutral}; 
	\node [block, below of=AN] (Ursache) {Störungsauslöser}; 
	\node [unter, below of=Ursache](nach) {\underline{nach}\\ Vertragsschluss};
	\node [unter, left of=nach, node distance=3cm](vor){\underline{vor}\\ Vertragsschluss};
	\node [unter, right of=nach, node distance=3cm] (inner){innerbetriebl.\\ Einflüsse}; 	
	\node [decision, below of=nach] (Folge) {Folge: Auswirkungen auf Verfahren, Zeit, Kosten};
	%Seitenbeschriftung
    \node [vertikal, left of=Verz, rotate=90, node distance=2.1cm](AS){Art der\\ Störung}; 
	\node [vertikal, left of=AG, rotate=90, node distance=3.6cm](VB){Verantwortungs-\\bereich}; 
	\node [vertikal, left of=vor, rotate=90, node distance=2.1cm](UB){Ursachen-\\gruppe}; 	
	% Verbindungslinien 
	\path [line] ([xshift=.8cm]Ausgang.south west) |- (Art); 
	\path [line] ([xshift=-.8cm]Ausgang.south east) |- (Art); 
	\path [line] (Verursacher) -- (AN); 
	\path [line] (Verursacher) -- (AG); 
	\path [line] (Verursacher) -- (neutral); 
	\path [line] ([xshift=.8cm]Ausgang.south west) |- (Verursacher); 
	\path [line] ([xshift=-.8cm]Ausgang.south east) |- (Verursacher);	
	\path [line] (Art) -- (Verz); 
	\path [line] (Art) -- (Besch); 
	\path [line] (Art) -- (Bauzeit); 
	\path [line] (Ursache) -- (vor);
	\path [line] (Ursache) -- (nach);
	\path [line] (Ursache) -- (inner);
	\path [line] ([xshift=.8cm]Ausgang.south west) |- (Ursache); 
	\path [line] ([xshift=-.8cm]Ausgang.south east) |- (Ursache);	
	\path [line] ([xshift=.8cm]Ausgang.south west) |- ([xshift=.8cm]Folge.north west); 
	\path [line] ([xshift=-.8cm]Ausgang.south east) |- ([xshift=.8cm]Folge.north west);
	\end{tikzpicture} 
	
\end{document}
Gruß
pauabaer

Bartman
Forum-Meister
Forum-Meister
Beiträge: 2466
Registriert: Do 16. Jul 2009, 21:41
Wohnort: Hessische Provinz

Beitrag von Bartman »


pauabaer
Forum-Fortgeschrittener
Forum-Fortgeschrittener
Beiträge: 63
Registriert: Sa 19. Sep 2015, 00:17

Beitrag von pauabaer »

Danke! :)

Antworten