goLaTeX - Mein LaTeX-Forum

Mein LaTeX-Forum


Login  | Registrieren
Direktlinks:
Zuletzt aktive Beiträge
Unbeantwortete Beiträge
[Erweitert]

Forenstatistik:
Beiträge: 101780
Top-Poster: Johannes_B (5072)

Wir begrüßen unseren neuesten Benutzer strilatex.

Links:


Mit Unterstützung von DANTE e.V.: Deutschsprachige Anwendervereinigung TeX. Danke den Mitgliedern!





Forum
      Option
[Erweitert]
  • Diese Seite weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Flussdiagramm mit TikZ

 

update.freak
Forum-Anfänger
Forum-Anfänger

Beiträge: 44
Anmeldedatum: 09.12.19
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 24.03.2020, 13:50     Titel: Flussdiagramm mit TikZ
  Antworten mit Zitat      
Hallo zusammen,

habe heute zum ersten Mal ein Flussdiagramm mit TikZ erstellt.
Daher bitte ich euch den Code einmal anzuschauen ob es Verbesserungsmöglichkeiten gibt (die für mich als Neuling noch nicht ersichtlich sind)?

Code

\documentclass[
fontsize=12pt,
ngerman
]{scrreprt}

\usepackage[T1]{fontenc}
\usepackage{babel}

\usepackage{tikz}
\usetikzlibrary{shapes,arrows}

\begin{document}
\begin{figure}[htbp]
   \centering
   \tikzstyle{start} = [draw, rounded rectangle, thick, rounded corners, minimum width=12em, minimum height=3em, text centered]
   \tikzstyle{block} = [draw, rectangle, thick, rounded corners, minimum width=12em, minimum height=3em, text centered]
   \tikzstyle{decision} = [draw, diamond, thick, node distance = 3.5cm, text width=6em, text badly centered, inner sep=0pt]
   \tikzstyle{line} = [draw, thick, -latex']
   \begin{tikzpicture}[node distance = 2cm, auto]
   \node [start] (1) {Start};
   \node [block, below of=1] (2) {Schritt 1};
   \node [block, below of=2] (3) {Schritt 2};
   \node [block, right of=3, node distance=7cm] (4) {Korrektur};
   \node [block, below of=3] (5) {Schritt 3};
   \node [decision, below of=5] (6) {Abbruch?};
   \node [start, below of=6, node distance = 3.5cm] (7) {Ergebnis};
   \path [line] (1) -- (2);
   \path [line] (2) -- (3);
   \path [line] (3) -- (5);
   \path [line] (5) -- (6);
   \path [line] (6) -| node [near start] {nein} (4);
   \path [line] (4) |- (2);
   \path [line] (6) -- node {ja}(7);
   \end{tikzpicture}
   \caption{Ablauf}
   \label{fig:Ablauf}                      
\end{figure}
\end{document}
 
Private Nachricht senden Benutzer-Profile anzeigen

Bartman
Forum-Meister
Forum-Meister


Beiträge: 2086
Anmeldedatum: 16.07.09
Wohnort: Hessische Provinz
Version: ---
     Beitrag Verfasst am: 24.03.2020, 15:19     Titel:
  Antworten mit Zitat      
Mein Vorschlag für einige Änderungen:

Code
\documentclass[tikz, border=5pt]{standalone}
\usetikzlibrary{shapes,arrows.meta}

\begin{document}
\begin{tikzpicture}[
    node distance = 2cm, auto,
    thick,% Ersatz für die Option in allen Stilen
    start/.style = {% \tikzstyle ist veraltet
        draw,
        rounded rectangle,
        rounded corners,
        minimum width=12em,
        minimum height=3em,
        align=center% Ersatz für text centered
    },
    block/.style = {
        draw,
        rounded corners,
        minimum width=12em,
        minimum height=3em,
        align=center% s. o.
    },
    decision/.style = {
        draw,
        diamond,
        node distance = 3.5cm,
        text width=6em,
        align=flush center,% Ersatz für text badly centered
        inner sep=0pt
    },
    line/.style = {
        draw,
        -Stealth
   
}
]
    \node [start] (1) {Start};
    \node [block, below of=1] (2) {Schritt 1};
    \node [block, below of=2] (3) {Schritt 2};
    \node [block, right of=3, node distance=7cm] (4) {Korrektur};
    \node [block, below of=3] (5) {Schritt 3};
    \node [decision, below of=5] (6) {Abbruch?};
    \node [start, below of=6, node distance = 3.5cm] (7) {Ergebnis};
    \path [line]
        (1) edge (2)
        (2) edge (3)
        (3) edge (5)
        (5) edge (6)
    ;
    \path [line] (6) -| node [near start] {nein} (4);
    \path [line] (4) |- (2);
    \path [line] (6) -- node {ja} (7);
\end{tikzpicture}
\end{document}


Setze die Stile mit \tikzset in die Präambel, wenn Du sie in mehreren Zeichnungen benutzt.

Man könnte auch mit den Bibliotheken matrix und/oder positioning arbeiten, aber das wären nur Alternativen. Auch die chains-Bibliothek wäre für einen Teil der Zeichnung nützlich.

Zuletzt bearbeitet von Bartman am 24.03.2020, 15:34, insgesamt einmal bearbeitet
Private Nachricht senden Benutzer-Profile anzeigen

update.freak
Forum-Anfänger
Forum-Anfänger

Beiträge: 44
Anmeldedatum: 09.12.19
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 24.03.2020, 15:33     Titel:
  Antworten mit Zitat      
vielen herzlichen Dank für die Verbesserungsvorschläge!
Eine Frage habe ich noch:

Lässt sich der Abstand von der "Entscheidungs-Raute" zu den Rechtecken (z.B. das obere Eck zu dem Rahmen des Rechtecks) genauso groß einstellen, wie die Abstände der Rechtecke (also Abstände der Rahmen) zueinander?
Private Nachricht senden Benutzer-Profile anzeigen

Bartman
Forum-Meister
Forum-Meister


Beiträge: 2086
Anmeldedatum: 16.07.09
Wohnort: Hessische Provinz
Version: ---
     Beitrag Verfasst am: 24.03.2020, 15:46     Titel:
  Antworten mit Zitat      
Mit positioning geht es:

Code
\documentclass[tikz, border=5pt]{standalone}
\usetikzlibrary{shapes,arrows.meta,positioning}

\begin{document}
\begin{tikzpicture}[
%    node distance = 2cm,
    auto,
    thick,
    start/.style = {
        draw,
        rounded rectangle,
        rounded corners,
        minimum width=12em,
        minimum height=3em,
        align=center
   
},
    block/.style = {
        draw,
        rounded corners,
        minimum width=12em,
        minimum height=3em,
        align=center
   
},
    decision/.style = {
        draw,
        diamond,
%        node distance = 3.5cm,
        text width=6em,
        align=flush center,
        inner sep=0pt
    },
    line/.style = {
        draw,
        -Stealth
   
}
]
    \node [start] (1) {Start};
    \node [block, below=of 1] (2) {Schritt 1};
    \node [block, below=of 2] (3) {Schritt 2};
    \node [block, right=of 3] (4) {Korrektur};
    \node [block, below=of 3] (5) {Schritt 3};
    \node [decision, below=of 5] (6) {Abbruch?};
    \node [start, below=of 6] (7) {Ergebnis};
    \path [line]
        (1) edge (2)
        (2) edge (3)
        (3) edge (5)
        (5) edge (6)
    ;
    \path [line] (6) -| node [near start] {nein} (4);
    \path [line] (4) |- (2);
    \path [line] (6) -- node {ja} (7);
\end{tikzpicture}
\end{document}
Private Nachricht senden Benutzer-Profile anzeigen

update.freak
Forum-Anfänger
Forum-Anfänger

Beiträge: 44
Anmeldedatum: 09.12.19
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 24.03.2020, 15:55     Titel:
  Antworten mit Zitat      
super, genauso will ich es haben.
Dank dir!
Private Nachricht senden Benutzer-Profile anzeigen

Neues Thema eröffnen Neue Antwort erstellen



Options and Permissions
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum nicht posten
Du kannst Dateien in diesem Forum herunterladen
.

goLaTeX ist Teil der goForen
goForen.de goMATLAB.de goLaTeX.de


  Datenschutzerklärung | Impressum | FAQ | goLaTeX RSS Button RSS-Feed

Copyright © 2008 - 2020 goLaTeX.de