Seite 1 von 1
Geschweifte Klammer neben Ablaufschema
Verfasst: Sa 5. Apr 2014, 19:43
von sascha
%Hallo alle Forenmitglieder!
Die folgende Grafik soll in drei Phasen unterteilt werden. Dafür möchte ich gerne geschweifte Klammern rechts neben den Kästchens darstellen. Der erste Abschnitt geht vom ersten Kästchen (Kundenanfrage) bis einschließlich zum siebten Kästchen (Angebot versenden). Schön wäre es natürlich, wenn die Klammer ober- und unterhalb der Boxen den Bereich einschließen würden.
Kann bei diesem Problem mir eventuell einer helfen. Ich bekomme es einfach nicht hin.
\documentclass[12pt,a4paper]{scrreprt}
\usepackage[ngerman]{babel}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{graphicx}
\usepackage{graphicx, subfigure}
\usepackage{tikz}
\usetikzlibrary{positioning,shadings,decorations,pathreplacing}
\usetikzlibrary{arrows}
\begin{document}
\begin{tikzpicture}[auto, node distance = 0.6cm, thick,
every node/.style = {rectangle, font = \sffamily, draw=black,
text width = 6cm, align = center, minimum height = 1.0cm}]
\node (KA) {Kundenanfrage};
\node (ER) [below = of KA] {Erfassung};
\node (BE) [below = of ER] {Besichtigung des Objektes};
\node (RP) [below = of BE] {Ressourcen prüfen};
\node (MP) [below = of RP] {Materialpreise erfragen};
\node (AE) [below = of MP] {Angebot erstellen};
\node (AV) [below = of AE] {Angebot versenden};
\node (ZK) [fill=red!30!] [below = of AV] {Zu- oder Absage vom Kunden};
\node (BP) [below = of ZK] {Ausführung der Arbeiten};
\node (FP) [below = of BP] {Fertigstellung der Arbeiten};
\node (AP) [fill=red!30!] [below = of FP] {Abnahme oder Reklamation der Arbeiten};
\node (RE) [below = of AP] {Rechnungserstellung};
\node (RV) [below = of RE] {Rechnungsversendung};
\node (RÜ) [below = of RV] {Zahlungseingang prüfen};
\draw [->] [black,thick] (KA) -- (ER);
\draw [->] [black,thick] (ER) -- (BE);
\draw [->] [black,thick] (BE) -- (RP);
\draw [->] [black,thick] (RP) -- (MP);
\draw [->] [black,thick] (MP) -- (AE);
\draw [->] [black,thick] (AE) -- (AV);
\draw [->] [black,thick] (AV) -- (ZK);
\draw [->] [black,thick] (ZK) -- (BP);
\draw [->] [black,thick] (BP) -- (FP);
\draw [->] [black,thick] (FP) -- (AP);
\draw [->] [black,thick] (AP) -- (RE);
\draw [->] [black,thick] (RE) -- (RV);
\draw [->] [black,thick] (RV) -- (RÜ);
\draw [thick,red,decorate,decoration={brace,amplitude=12pt}] (KA) -- (AV) node[midway,right,yshift=12pt,]{Test};
\end{tikzpicture}
\end {document}
%
Verfasst: Sa 5. Apr 2014, 19:51
von Felix
Hier sind ähnliche Beispiele, hilft davon schon was?
Ansonsten frag ich da auch einfach, wenn ich was zu TikZ wissen will.
Felix
Verfasst: Sa 5. Apr 2014, 20:15
von sascha
Die Seiten habe ich bereits auch schon im Netz gefunden. Helfen mir jedoch leider nicht weiter... Danke Felix
Verfasst: Sa 5. Apr 2014, 20:59
von Felix
sascha hat geschrieben:Die Seiten habe ich bereits auch schon im Netz gefunden.
Dort nehmen sie auch Fragen an. Sie
wollen sogar neue Fragen, zum Archiv-Aufbau, egal ob leicht oder schwer oder spezifisch.
Ansonsten fällt mir erstmal auf, dass es keine library pathreplacing gibt, das hat LaTeX beim Testen bemängelt. Ich sah, dass man decorations.pathreplacing schreiben muss, mit Punkt statt Komma, evtl. hat der kleine Fehler schon gestört.
Felix
Verfasst: Sa 5. Apr 2014, 21:34
von Felix
Ah, ich bemerke grad, wir sahen uns dort auch schon bei der
Organigramm-Frage.

Dann hab ich Dir ja nix neues gesagt. Freut mich, dass ich dort was zum TeXwelt-Archiv beitragen konnte. Zu decorations.pathreplacing fällt mir übrigens ein:
Was bedeutet der Punkt im Namen von TikZ libraries? sowie
Wie kann ich möglichst alle TikZ-Libraries laden?
Felix
Verfasst: Sa 5. Apr 2014, 21:55
von sascha
%
Hiermit habe ich es hinbekommen! Wenn die "node"Boxenrahmen (Test1-3) nicht zu sehen wären und unabhängig von den anderen, wäre es perfekt.
\documentclass[12pt,a4paper]{scrreprt}
\usepackage[ngerman]{babel}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{graphicx}
\usepackage{graphicx, subfigure}
\usepackage{tikz}
\usetikzlibrary{arrows}
\usetikzlibrary{decorations.pathreplacing}
\usetikzlibrary{positioning,shadings}
\begin{center}
\begin{tikzpicture}[auto, node distance = 0.5cm, thick,
every node/.style = {rectangle, font = \sffamily, draw=black,
text width = 6cm, align = center, minimum height = 1.0cm}]
\node (KA) {Kundenanfrage};
\node (ER) [below = of KA] {Erfassung};
\node (BE) [below = of ER] {Besichtigung des Objektes};
\node (RP) [below = of BE] {Ressourcen prüfen};
\node (MP) [below = of RP] {Materialpreise erfragen};
\node (AE) [below = of MP] {Angebot erstellen};
\node (AV) [below = of AE] {Angebot versenden};
\node (ZK) [fill=red!30!] [below = of AV] {Zu- oder Absage vom Kunden};
\node (BP) [below = of ZK] {Ausführung der Arbeiten};
\node (FP) [below = of BP] {Fertigstellung der Arbeiten};
\node (AP) [fill=red!30!] [below = of FP] {Abnahme oder Reklamation der Arbeiten};
\node (RE) [below = of AP] {Rechnungserstellung};
\node (RV) [below = of RE] {Rechnungsversendung};
\node (RÜ) [below = of RV] {Zahlungseingang prüfen};
\draw [->] [black,thick] (KA) -- (ER);
\draw [->] [black,thick] (ER) -- (BE);
\draw [->] [black,thick] (BE) -- (RP);
\draw [->] [black,thick] (RP) -- (MP);
\draw [->] [black,thick] (MP) -- (AE);
\draw [->] [black,thick] (AE) -- (AV);
\draw [->] [black,thick] (AV) -- (ZK);
\draw [->] [black,thick] (ZK) -- (BP);
\draw [->] [black,thick] (BP) -- (FP);
\draw [->] [black,thick] (FP) -- (AP);
\draw [->] [black,thick] (AP) -- (RE);
\draw [->] [black,thick] (RE) -- (RV);
\draw [->] [black,thick] (RV) -- (RÜ);
\draw [thick,red,decorate,decoration={brace,amplitude=12pt}] (KA.north east) -- (AV.south east) node[midway,right,xshift=12pt,]{Test1};
\draw [thick,red,decorate,decoration={brace,amplitude=12pt}] (BP.north east) -- (FP.south east) node[midway,right,xshift=12pt,]{Test2};
\draw [thick,red,decorate,decoration={brace,amplitude=12pt}] (RE.north east) -- (RÜ.south east) node[midway,right,xshift=12pt,]{Test3};
\end{tikzpicture}
\end{center}
\begin{figure}[h]
\caption{Prozessablauf der Dienstleistungserbringung} \label{weiss}
\end{figure}
%
Verfasst: So 6. Apr 2014, 00:13
von Studi
Noch ein paar Tipps: Du lädst graphicx unnötigerweise doppelt, das subfigure Paket ist veraltet und Nachfolger ist subfig, siehe
Veraltete Pakete und deren empfohlene Nachfolger für eine Liste. Die figure-Umgebung für die caption nach dem Bild ist ungeeignet: die ganze TikZ-Grafik gehört mit in die figure-Umgebung hinein, sonst kann die Bildunterschrift auf die nächste Seite rutschen oder noch weiter weg. Für Beispielstruktur siehe die Antwort in:
Wie kann ich einer Grafik einen Untertitel hinzufügen?
Studi
Verfasst: So 6. Apr 2014, 01:47
von esdd
Hier ist mal noch ein alternativer Vorschlag für die Zeichnung:
\documentclass[12pt]{scrreprt}
\usepackage[ngerman]{babel}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{tikz}
\usetikzlibrary{matrix}
\usetikzlibrary{decorations.pathreplacing}
\begin{document}
\begin{center}
\begin{minipage}{\linewidth}
\centering
\begin{tikzpicture}[thick]
\matrix(M)[matrix of nodes,row sep=0.5cm,
nodes={draw,font=\sffamily,minimum height=1cm,
text width=6cm,align=flush center}]
{
Kundenanfrage\\
Erfassung\\
Besichtigung des Objektes\\
Ressourcen prüfen\\
Materialpreise erfragen\\
Angebot erstellen\\
Angebot versenden\\
|[fill=red!30!]|Zu- oder Absage vom Kunden\\
Ausführung der Arbeiten\\
Fertigstellung der Arbeiten\\
|[fill=red!30!]|Abnahme oder Reklamation der Arbeiten\\
Rechnungserstellung\\
Rechnungsversendung\\
Zahlungseingang prüfen\\
};
% Pfeile zeichnen:
\foreach[evaluate=\i as \j using int(\i+1)] \i in {1,...,13}
\draw[->](M-\i-1)--(M-\j-1);
% Klammern mit Beschriftung:
\foreach \o/\u/\l in {
1/7/Test1,
9/10/Test2,
12/14/Test3
}
\draw[decorate,decoration={brace,amplitude=8pt},red]
([xshift=3pt,yshift=3pt]M-\o-1.north east)
-- node[right=8pt]{\l}([xshift=3pt,yshift=-3pt]M-\u-1.south east);
\end{tikzpicture}
\captionof{figure}{Prozessablauf der Dienstleistungserbringung}
\label{weiss}
\end{minipage}
\end{center}
\end{document}
Ich geh mal davon aus, dass die Abbildung nicht gleiten soll. Deshalb habe ich die Zeichnung zusammen mit den der Beschriftung in eine minipage gepackt. Die Beschriftung erzeugt man dann mit \captionof{figure}(<beschriftung>}. Falls die Abbildung doch gleiten darf, dann mach es wie von Studi vorgeschlagen.
Gruß
Elke
Verfasst: So 6. Apr 2014, 09:34
von sascha
Guten Morgen,
vielen lieben Dank an euch beiden! Ich werde mir die Threads durchlesen und die variante von Elke mal auschecken

Sieht klasse aus!
Verfasst: Mo 7. Apr 2014, 01:42
von esdd
Mit der aktuellen pgf/tikz Version 3.0 kann man auch die graphs library nutzen. Dann vereinfacht sich das ganze zu
\documentclass[12pt]{scrreprt}
\usepackage[ngerman]{babel}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{tikz}
\usetikzlibrary{graphs}
\usetikzlibrary{decorations.pathreplacing}
\begin{document}
\begin{center}
\begin{minipage}{\linewidth}
\centering
\begin{tikzpicture}[thick]
\graph[grow down sep=.5cm,
nodes={draw,font=\sffamily,minimum height=1cm,text width=6cm,align=flush center}]
{
Kundenanfrage->
Erfassung->
Besichtigung des Objektes->
Ressourcen prüfen->
Materialpreise erfragen->
Angebot erstellen->
Angebot versenden->
% wegen des - im Text muss der Nodenname
% hier anders als der Nodeninhalt gewählt werden:
Aussage vom Kunden[as=Zu- oder Absage vom Kunden,fill=red!30!]->
Ausführung der Arbeiten->
Fertigstellung der Arbeiten->
Abnahme oder Reklamation der Arbeiten[fill=red!30!]->
Rechnungserstellung->
Rechnungsversendung->
Zahlungseingang prüfen};
% Klammern mit Beschriftung:
\foreach \o/\u/\l in {
Kundenanfrage/Angebot versenden/Test1,
Ausführung der Arbeiten/Fertigstellung der Arbeiten/Test2,
Rechnungserstellung/Zahlungseingang prüfen/Test3
}
\draw[decorate,decoration={brace,amplitude=8pt},red]
([xshift=3pt,yshift=3pt]\o.north east)
-- node[right=8pt]{\l}([xshift=3pt,yshift=-3pt]\u.south east);
\end{tikzpicture}
\captionof{figure}{Prozessablauf der Dienstleistungserbringung}
\label{weiss}
\end{minipage}
\end{center}
\end{document}
Gruß
Elke