LaTeX oder Programm zur Erstellung von Programmhierarchie-Diagrammen

Shalec

Stammuser
Hallo allerseits,

Ich möchte in einem (vermutlich heißt das) FlowChart meine Programmhierarchie darstellen. Genutzt wird das Ergebnis in LaTeX. Eine Lösung für LaTeX würde ich dann bevorzugen. Man kann bei meinem Vorhaben praktisch an eine Mindmap mit zusätzlichen Verbindungen zwischen den Child-Elementen denken. Die jeweiligen Child sollen eine Form haben, die in etwa so aussieht:
Code:
+----------------------------------+
| Header                           |
+----------------------------------+
| Body                             |
|    -Stichpunkt1                  |
|    -Stichpunkt2                  |
+----------------------------------+
Die Frage hatte ich zuerst im Chat gestellt, eine Antwort war:

Schwedenmann
Schau dir mal die Linuxprogramme Dia,Yed und xmind an, die können genau diese Art Diagramme erzeugen.

Diese werde ich mir natürlich mal anschauen (hoffentlich gibt es Screenshots, ohne die Progs installieren zu müssen :) )


Aktuell realisiere ich sowas "ähnliches" mit "tikz/pgf" und der tikzlib "mindmap", die Nodes könnte ich dann entsprechend durch eine Framebox mit speziellem Setting definieren. Jedoch ist das eher eine grobe Draufsicht, als die genaue Definition. Und Verbindungen zwischen den einzelnen Children ist auch noch nicht ohne weiteres möglich. Natürlich kann ich jedem "node" einen Namen geben und dann diese Nodes verbinden, aber das ist auch eher suboptimal.

Code:
 [I]MWE[/I]
\documentclass[a4paper]{article}
\usepackage{tikz}
\usetikzlibrary{mindmap}

\begin{document}
\begin{tikzpicture} [	text width=3.7cm, align=flush center,%
				grow cyclic,%
				level 1/.append style={level distance=4.5cm,sibling angle=120},%
				level 2/.append style={level distance=2.5cm,sibling angle=75}%
			]	\node [font=\bfseries]{Topic} %
 		child { node {Parent 1}
 			child { node {1.1 Child} }
			child { node {1.2 Child} }
		}%
		child { node { Parent 2 }
 			child { node { 2.1 Child } }%
			child { node { 2.2 Child } }
		}%
		child { node { Parent 3} 
                        child { node { 3.1 Child } }%
			child { node { 3.2 Child } }
                };
\end{tikzpicture}
\end{document}

Die Parent/Child-Elementumrandung könnte man dann >>unschön<< mittels eines neu definierten Befehls "\surrounding{Header}{Body}" durch eine Framebox realisieren. (Beispiele sind auch im Tikz/PGF Manual auf Seite 74+- zu finden)
 
Zuletzt bearbeitet:

Shalec

Stammuser
Den habe ich sogar installiert.
@shalec, ist es nicht viel !! einfacher, solche Mindmappings extern zu erzeugen, als svg, ps zu speichern und dann in tex einzubinden ?

Vermutlich geht es wesentlich schneller.. ich muss nur erstmal die Zeit aufbringen, mich darin einzulesen, diese Exports an den Stellen, wo ich sie gerne hätte, einzubinden.

In jedem Fall, DANKE dafür :)
 

schwedenmann

Stammuser
Hallo

Grafiken einzubinden ist nett in Tex/latex, ich nutze Lyx, also Latex + quasi Wysiwg-Editor. Grafik mit Grafikbezeichnung, Nummerierung , Textumflossen, alles sehr schön und ob du mit dem texCode für mindmappings genau das ergebnis bekommst, das du haben möchtest, wage ich zu bezweifeln, in Bezug auf diagramm, Beschriftung, Farbe, etc. Da sind yed, xmind oder dia sehr vielseitig und lasen kaum Wünsche offen, siehst du ja an den Gallerieen der SW.

mfg
schwedenman
 

Shalec

Stammuser
Ja das stimmt. Mir würde allerdings ein Kasten, paar Buchstaben und Verbindungen in schwarz/weiß reichen :) Ich kenne die übliche Definition der geläufigen Darstellungen nicht und nehme daher eine für mich nativ verfolgbare. Also meine Ansprüche sind tatsächlich sehr minimalistisch. Die Verbindungen werden allerdings auch auf Childs anderer Parents abgebildet, daher sollte sowas gut implementiert sein und an anderen Objekten vorbei geführt werden.

Ich denke, dass yED eine "Eierlegende Wollmilchsau" ist. Was das jedenfalls angeht.

Wenn ich eine normale Bilddatei einbinde, oder generell die "figure" Umgebung nutze, gibt es auch ein Paket, dass diese Umgebung um die Option "H" erweitert, welche die Positionierung an der Stelle der Definition erzwingt. Sehr praktisch und einfach anzuwenden. offensichtlich :)

Lyx kenne ich, von Kommilitonen, aber der Tex-Code ist manchmal schlimm. Das Texen an sich, macht mir ja Spaß..Ich muss auch ehrlich sagen, dass ich mit Tex z.B. schneller und effizienter arbeiten kann, als mit Word. Liegt aber auch echt an der Gewöhnung an die Umgebung.
 
Oben