Archiv verlassen und diese Seite im Standarddesign anzeigen : Flussdiagramm mit pstricks: Breite und Ausrichtung der Boxen
Hallo,
ich möchte mit pstricks Flussdiagramme erstellen. Die Boxen sollen z.B. die gleiche Breite haben und der Text soll ggs. mehrzeilig sein.
Bitte schaut Euch mein Minimalbeispiel an und vielleicht könnt Ihr mir weiterhelfen?
1. Die Rauten für die Abfragen sollen immer gleich groß sein (der Text in der zweiten Raute also ggfs. mehrzeilig). Ich würde dazu gerne eine Raute mit einer festen Breite definieren, die ich dann immer verwende. Ich habe jetzt
gelesen, dass diabox immer die Größe abhängig vom Text macht. Das geht also so nicht, oder?
2. Den Text "..stimmt das denn" hätte ich gern mit Zeilenumbruch, also "stimmt\\das\\denn?"
3. Der Pfeil von der zweiten Raute zum Text "Polstelle" muß natürlich waagerecht sein.
Ich danke Euch für Eure Hilfe!
Grüße
Annette
\documentclass[10pt,a4paper,landscape]{article}
\usepackage{pstricks}
\usepackage{pstricks-add}
\usepackage[ngerman]{babel}
\usepackage{amsmath}
\usepackage[left=10mm,right=5mm,top=15mm,bottom=0mm]{geometry}
\input {../test_header}
\begin{document}
\begin{psmatrix}[rowsep=0.8,colsep=0.4]
\rnode{11}{Existiert der Funktionswert?}{}
& \dianode{12}{stetig?}
\\
& \rnode{22}{\psframebox{..das muss geprueft werden!}}
\\
& \dianode{32}{Existiert $\lim\limits_{\substack{x \to x_i \\ x < x_i}} f(x)$ und
$\lim\limits_{\substack{x \to x_i \\ x > x_i}} f(x)$?}
& \rnode{33}{Polstelle}
\end{psmatrix}%
\psset{arrows=->,nodesep=0pt}
\ncline{12}{22}
\ncline{22}{32}\nbput{..stimmt das denn? }
\ncline{32}{33}
\end{document}
ich möchte mit pstricks Flussdiagramme erstellen. Die Boxen sollen z.B. die gleiche Breite haben und der Text soll ggs. mehrzeilig sein.
Bitte schaut Euch mein Minimalbeispiel an und vielleicht könnt Ihr mir weiterhelfen?
1. Die Rauten für die Abfragen sollen immer gleich groß sein (der Text in der zweiten Raute also ggfs. mehrzeilig). Ich würde dazu gerne eine Raute mit einer festen Breite definieren, die ich dann immer verwende. Ich habe jetzt
gelesen, dass diabox immer die Größe abhängig vom Text macht. Das geht also so nicht, oder?
2. Den Text "..stimmt das denn" hätte ich gern mit Zeilenumbruch, also "stimmt\\das\\denn?"
3. Der Pfeil von der zweiten Raute zum Text "Polstelle" muß natürlich waagerecht sein.
\documentclass[10pt,a4paper,landscape]{article}
\usepackage{pstricks}
\usepackage{pstricks-add}
\usepackage[ngerman]{babel}
\usepackage{amsmath}
\usepackage[left=10mm,right=5mm,top=15mm,bottom=0mm]{geometry}
\input {../test_header}
diese Zeile ist für uns sinnlos, wenn du test_header nicht mitlieferst ...
\documentclass[10pt,a4paper,landscape]{article}
\usepackage{pst-node}
\usepackage[ngerman]{babel}
\usepackage{amsmath}
\usepackage[left=10mm,right=5mm,top=15mm,bottom=0mm]{geometry}
\newcommand\TAB[2][1]{{\def\arraystretch{#1}\tabular{@{}c@{}}#2\endtabu lar}}
\begin{document}
\begin{psmatrix}[rowsep=0.8,colsep=0.4,mnode=dia]
[mnode=r]Existiert der Funktionswert? & stetig?\\
& [mnode=r]\psframebox{..das muss geprueft werden!}\\
& Existiert $\lim\limits_{\substack{x \to x_i \\ x < x_i}} f(x)$ und
$\lim\limits_{\substack{x \to x_i \\ x > x_i}} f(x)$?
& [mnode=r]Polstelle
\end{psmatrix}%
\psset{arrows=->,nodesep=0pt}
\ncline{1,2}{2,2}
\ncline{2,2}{3,2}\nbput{\TAB[0.5]{..stimmt\\ das\\ denn?} }
\ncline{3,2}{3,3}
\end{document}
\TAB[0.5] kennzeichnet einen optionalen geringeren Zeilenabstand. Kannst du
auch weglassen, dann ist es der Standardzeilenabstand.
Herbert
1. Die Rauten für die Abfragen sollen immer gleich groß sein (der Text in der zweiten Raute also ggfs. mehrzeilig). Ich würde dazu gerne eine Raute mit einer festen Breite definieren, die ich dann immer verwende. Ich habe jetzt
gelesen, dass diabox immer die Größe abhängig vom Text macht. Das geht also so nicht, oder?
habe den ersten Punkt vergessen:
\documentclass[10pt,a4paper,landscape]{article}
\usepackage{pst-node}
\usepackage[ngerman]{babel}
\usepackage{amsmath}
\usepackage{ragged2e}
\usepackage[left=10mm,right=5mm,top=15mm,bottom=0mm]{geometry}
\newcommand\TAB[2][1]{{\def\arraystretch{#1}\tabular{@{}c@{}}#2\endtabu lar}}
\newcommand\RAUTE[2][3cm]{\parbox{#1}{\Centering#2}}
\begin{document}
\begin{psmatrix}[rowsep=0.8,colsep=0.4,mnode=dia]
[mnode=r]Existiert der Funktionswert? & \RAUTE{stetig?}\\
& [mnode=r]\psframebox{..das muss geprueft werden!}\\
& \RAUTE{Existiert $\lim\limits_{\substack{x \to x_i \\ x < x_i}} f(x)$ und
$\lim\limits_{\substack{x \to x_i \\ x > x_i}} f(x)$?}
& [mnode=r]Polstelle
\end{psmatrix}%
\psset{arrows=->,nodesep=0pt}
\ncline{1,2}{2,2}
\ncline{2,2}{3,2}\nbput{\TAB[0.5]{..stimmt\\ das\\ denn?} }
\ncline{3,2}{3,3}
\end{document}
Herbert
Herbert,
vielen, vielen Dank - für Dein korrigiertes und für mich verständliches Beispiel, an dem ich wieder so viel lernen kann (u.a. RAUTE - !) Ist so etwas irgendwo erklärt? .. ich habe natürlich nichts dergleichen gefunden.
Eine Frage noch: Wodurch ist der Pfeil unten rechts nun exakt ausgerichtet?
Annette
P.S. Entschuldige für den test_header, da hast Du natürlich Recht, damit kann keiner was anfangen. (Der war nur versehentlich noch drin, für mich zum Testen, das Minimalbeispiel war lauffähig))
.. und entschuldige meine späte Reaktion, da ich bis eben nicht online war.
Eine Frage noch: Wodurch ist der Pfeil unten rechts nun exakt ausgerichtet?
Annette,
wenn du eine Raute per \rnode einfügst, dann ist die nicht notwendigerweise vertikal zentriert, weil hier der Text als Basis genommen wird, um die die RAute gesetzt wird. Wenn du sie aber gleich als [mnode=dia] einfügst, wird sie von psmatrix vertikal zentriert, sodass der Pfeil dann auch genau in der Spitze beginnt.
Compris?
Der Rest ist eigentlich immer dieselbe Leier: Für gleiche Breiten entweder eine Tabelle oder eine \parbox nehmen, oder makebox für einzeilige Dinge.
Herbert
compris - Herbert. Dann kann ich dem command RAUTE auch sicher eine feste Höhe mitgeben und alle Texte darin werden mit Centering schön positioniert, oder?
Annette
Dann kann ich dem command RAUTE auch sicher eine feste Höhe mitgeben und alle Texte darin werden mit Centering schön positioniert, oder?
ja, das geht
Herbert
... verrätst Du mir auch wie?
Annette
... verrätst Du mir auch wie?
achso, ich dachte, du hattest schon eine Idee:
\newcommand\RAUTE[2][3cm]{\parbox[c][2cm][c]{#1}{\Centering#2}}
2cm ist die Höhe, kannst auch einen Parameter dafür festlegen.
Herbert
..perfekt! (.. ja - ich hatte es mehrfach versucht - aber als Option von RAUTE, was nicht ging)
danke Dir,
Annette
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.