Nodeposition an Path verändern

Antwort erstellen


Diese Frage dient dazu, das automatisierte Versenden von Formularen durch Spam-Bots zu verhindern.
Smilies
:D :) :( :o :shock: :? 8) :lol: :-x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen:

BBCode ist eingeschaltet
[img] ist eingeschaltet
[flash] ist ausgeschaltet
[url] ist eingeschaltet
Smilies sind eingeschaltet

Die letzten Beiträge des Themas

Ich habe die Datenschutzerklärung gelesen und bin damit einverstanden.

   

Wenn du eine Datei oder mehrere Dateien anhängen möchtest, gib die Details unten ein.

Ansicht erweitern Die letzten Beiträge des Themas: Nodeposition an Path verändern

von leeroyj » Mi 7. Mär 2012, 17:14

Habe jetzt doch genau das gefunden was ich gesucht habe :)
Mit pos=0-1.0 kann man angeben wo die Node positioniert wird, 0 ist Start, 1.0 ist Pfeilspitze. Trotzdem danke ;)

Und ja, ich habe libraries benutzt, nicht dran gedacht, dass die mit rein müssen.

von Apfeltasche » Mi 7. Mär 2012, 14:46

Ein einfaches node[below right] tut es auch, oder eben node[above left]

von Apfeltasche » Mi 7. Mär 2012, 14:42

Dein Codeschnipsel läuft bei mir auf jeden Fall nicht einfach so durch, entweder du hast mit 'state' selbst sachen definiert oder du benutzt irgendeine tikzlibrary.
Nichtsdestotrotz kannst du nochmal ins pgfmanual schauen. Bei mir im Abschnitt "16.5.1 Positioning Nodes Using Anchors".
also z.B. node[anchor=north]

Nodeposition an Path verändern

von leeroyj » Mi 7. Mär 2012, 13:18

Hi, ich experimentiere derzeit ein wenig mit TikZ, um Automaten darzustellen. Jetzt habe ich folgenden Automaten.
\begin{tikzpicture}[node distance=2cm,auto,bend angle=10]
	\node[state,initial,accepting]	(q_0)					{$q_0$};
	\node[state]					(q_1)	[above=of q_0]	{$q_1$};
	\node[state]					(q_2)	[right=of q_1]	{$q_2$};
	\node[state]					(q_3)	[right=of q_2]	{$q_3$};
	\node[state]					(q_4)	[right=of q_0]	{$q_4$};
	\node[state,accepting]			(q_5)	[right=of q_4]	{$q_5$};
	\node[state]					(q_6)	[below=of q_0]	{$q_6$};
	\node[state]					(q_7)	[right=of q_6]	{$q_7$};
	\node[state]					(q_8)	[right=of q_7]	{$q_8$};
	
	\path[->]	(q_0)	edge					node[swap]	{a} (q_4)
						edge	[bend left]		node		{b} (q_2)
				(q_1)	edge					node[swap]	{a} (q_0)
						edge					node		{b} (q_2)
				(q_2)	edge	[bend left]		node		{a}	(q_0)
						edge	[bend left]		node		{b}	(q_3)
				(q_3)	edge	[bend left]		node		{a}	(q_2)
						edge	[bend left]		node		{b} (q_0)
				(q_4)	edge					node[swap]	{a} (q_6)
						edge					node		{b} (q_5)
				(q_5)	edge					node		{a}	(q_3)
						edge					node[swap]	{b}	(q_6)
				(q_6)	edge					node		{a}	(q_0)
						edge					node		{b}	(q_7)
				(q_7)	edge					node		{a}	(q_8)
						edge					node		{b}	(q_5)
				(q_8)	edge					node		{a}	(q_5)
						edge					node		{b}	(q_4);
		
\end{tikzpicture}
Das sieht dann so aus:
Bild

Mein Problem ist, dass die Nodes, die die Beschriftung für die Pfade q8->q4 und q7->q5 sich überschneiden. Gibt es eine Möglichkeit, die Nodes nicht in der Mitte zu generieren, sondern vielleicht an der Ausgangs/End-Node des jeweiligen Pfades? Aus dem, was dazu im pgfmanual steht, werde ich nicht wirklich schlau.

Nach oben