Seite 1 von 1

Pfeile zwischen Vektoreinträgen zweier Vektoren

Verfasst: Fr 6. Jan 2012, 15:13
von alex86
Hallo,
ich habe zwei Vektoren:

\[\left[\begin{array}{c}\varphi_1 \\
\varphi_2 \\
\varphi_3 \\
\varphi_4 \\
\varphi_5 \\
\varphi_6 \\
\varphi_7 \\
\varphi_8 \end{array}\right]\]

und

\begin{array}{c} \varphi_{+_1}=\varphi_1+\varphi_5 \\
\varphi_{+_2}=\varphi_2+\varphi_6 \\
\varphi_{+_3}=\varphi_3+\varphi_7 \\
\varphi_{+_4}=\varphi_4+\varphi_8 \\
\varphi_{-_1}=(\varphi_1-\varphi_5)\omega^0 \\
\varphi_{-_2}=(\varphi_2-\varphi_6)\omega^1 \\
\varphi_{-_3}=(\varphi_3-\varphi_7)\omega^2 \\
\varphi_{-_4}=(\varphi_4-\varphi_8)\omega^3\end{array}
(dieser hier hat bewusst keine Klammern)

Ich möchte jetzt zwischen einigen Vektoreinträgen Pfeile einfügen, zum Beispiel von \varphi_1 aus dem ersten Vektor nach \varphi_{+_1} aus dem zweiten Vektor, sowie von \varphi_5 aus dem ersten Vektor nach \varphi_{+_1} aus dem zweiten Vektor. Also zur Verdeutlichung, wie der zweite Vektor aus dem ersten entsteht.

Kann mir da irgendjemand weiterhelfen? Das Paket tikz hab ich mir vorhin angeschaut, bin aber bezogen auf meinen Fall nicht ganz schlau draus geworden.

Vielen Dank,
Alexandra

Verfasst: Fr 6. Jan 2012, 15:14
von bloodworks
Hallo und Willkommen.
Bitte verwende doch den CODE Button. Zudem haben es potentielle Helfer sehr gerne, wenn man ihnen ein Minimalbeispiel [2] liefert. Dan habens die auch sehr viel leichter.

Verfasst: Fr 6. Jan 2012, 16:33
von iTob
Hallo Alexandra,

TikZ ist eigentlich eine gute Idee. Schau mal hier (bzw. dort in der ganzen Kategorie Overlay), vielleicht hilft dir das Beispiel weiter.

Tobi

Verfasst: Fr 6. Jan 2012, 17:17
von iTob
Nachtrag

Hier nochmal ein etwas einfacheres Beispiel, bei dem ich die Vektoren auch einfach mit TikZ zeichne und dann kann man mit (<Name>-<Zeile>-<Spalte>) auf die einzelnen Elemente zugreifen, wenn man dem {tikzpicture} remember picture sagt.
Das solltest du aber leicht auch in der Doku nachlesen können. Wenn nicht frag nach!
\documentclass{minimal}

\usepackage{tikz}
\usetikzlibrary{matrix}

\tikzstyle{vector} = [%
	matrix of math nodes,
	left delimiter={[},
	right delimiter={]},
]

\begin{document}
\begin{equation}
	\vec{a} = \begin{tikzpicture}% Bild beginnen
		[baseline, remember picture]% Bild-Optionen
		\matrix% Matirx beginnen
			(vektor1) % Name 
			[vector] % (Stil-)Optionen 
			{ % Inhalte
			\varphi_2 \\ 
			\varphi_3 \\ 
			\varphi_4 \\ 
			\varphi_5 \\ 
			\varphi_6 \\ 
			\varphi_7 \\ 
			\varphi_8 \\
			}% Ende Inhalt
		; % Ende Matrix 
	\end{tikzpicture}% Bild beenden
\end{equation}
\begin{equation}
	\vec{b} = \begin{tikzpicture}[baseline, remember picture]
		\matrix (vektor2) [vector] {
			\Phi_2 \\ 
			\Phi_3 \\ 
			\Phi_4 \\ 
			\Phi_5 \\ 
			\Phi_6 \\ 
			\Phi_7 \\ 
			\Phi_8 \\
		};
	\end{tikzpicture}
\end{equation}
\begin{tikzpicture}[remember picture,overlay]
	\draw [thick, blue,->] (vektor1-1-1) to[bend left] (vektor2-1-1);
	\draw [thick, red,->, dashed] (vektor1-4-1) to[bend right] (vektor2-3-1);
\end{tikzpicture}
\end{document}
Die Pfeile werden dann automatisch gezogen, du solltest nur darauf achten, das beide Matrizen auch auf der selben Seite sind ;-)

Verfasst: Fr 6. Jan 2012, 17:54
von alex86
Hallo Tobi!
Vielen Dank für deine Antwort!
Ich hab dein Programm mal bei mir durchlaufen lassen, das liefert mir die zwei Vektoren untereinander, aber die Pfeile sind irgendwo auf der Seite und auch nicht so ganz als Pfeile zu identifizieren ;)
Hab das pdf-dok mal hier angehängt

Ich hab's eben so versucht:
Die beiden Vektoren habe ich als Spalten einer 8x2-Matrix angelegt und wollte dazwischen Pfeile machen
\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{matrix}

\usepackage{verbatim}
\usepackage[active,tightpage]{preview}
\usepackage{subfig}
\PreviewEnvironment{tikzpicture}
\setlength\PreviewBorder{5pt}%

\begin{document}
\begin{tikzpicture}
  \matrix (m) [matrix of math nodes, row sep=1em,
    column sep=5em]{
    $\varphi_1$ & $\varphi_{+_1}$\\ %=\varphi_1+\varphi_5$\\ 
    $\varphi_2$ & $\varphi_{+_2}$\\ %=\varphi_2+\varphi_6$\\ 
    $\varphi_3$ & $\varphi_{+_3}$\\ %=\varphi_3+\varphi_7$\\ 
    $\varphi_4$ & $\varphi_{+_4}$\\}; %=\varphi_4+\varphi_8$\\ 
%    &$\varphi_5$ & $\varphi_{-_1}=(\varphi_1-\varphi_5)\omega^0$\\ 
%    &$\varphi_6$ & $\varphi_{-_2}=(\varphi_2-\varphi_6)\omega^1$\\ 
%    &$\varphi_7$ & $\varphi_{-_3}=(\varphi_3-\varphi_7)\omega^2$\\ 
%    &$\varphi_8$ & $\varphi_{-_4}=(\varphi_4-\varphi_8)\omega^3$\\};
  \path[-stealth]
    (m-1-1) edge (m-1-2)
    (m-2-1) edge (m-2-2);
\end{tikzpicture}
\end{document}
allerdings kriege ich damit 32 Fehlermeldungen, und da ich mich mit dem tikz-Packet nicht auskenne, weiß ich gar nicht, wo ich zu suchen anfangen soll. Siehst du vielleicht auf Anhieb, was da falsch ist?

Vielen Dank und viele Grüße

Verfasst: Fr 6. Jan 2012, 18:35
von iTob
Also der Reihe nach. Ich kann dir natürlich nicht in einem Post TikZ erklären, deshalb rate ich dir wenigstens ein paar der tollen Tutorials am Anfang der Doku durchzuarbeiten.
Außerdem hat die Doku einen interaktiven Index und interaktive Code-beispiele, in denen du immer auf einen Befehl klicken kannst um zu seiner Erklärung zu kommen.

Zu deinem Code:
  • Um die Pfeile richtig darstellen zu können, braucht TikZ zwei pdflatex-Durchläufe
  • Da dur eine [matrix of math nodes] hast, lasse alle $ weg. Die ergänzt TikZ.
  • \path macht nur einen Pfad, ohne zu zeichnen. Nim stattdessen \draw
  • Ich bin nicht sicher, ob du edge an dieser stelle nehmen kannst. verwende besser die to Operation wie ich in meinem Beispiel.
Versuche mal mit diesen Hinweisen, Vergleich unserer Beispiele und der Doku weiter zu kommen. Wenn das nicht geht, sag nochmal bescheid.

Verfasst: Fr 6. Jan 2012, 19:45
von alex86
Vielen, vielen Dank!
Es klappt jetzt :D

Der eigentliche Fehler waren die $-Zeichen, der Rest hat dann eigentlich funktioniert. Habe jetzt aber trotzdem \draw statt \path genommen und mit Hilfe der TikZ-Beispiele etwas an der Gestalt herumgefeilt.
Bin jetzt zufrieden mit dem, wie's aussieht.

Vielen Dank für deine Hilfe!!!
Schönen Abend noch,
Alexandra

Verfasst: Fr 6. Jan 2012, 20:10
von iTob
Gern gescheh’n!

Dir auch ein schönes WE!
Tobi

PS: Denk doch nächstes mal bitte dran, den Status anzupassen ;-)