von Bartman » So 16. Okt 2016, 19:59
BennyS hat geschrieben:-Wie kann ich den rechten Vektor/Matrix "nach oben verschieben" wie in der Zielform? Dies wird wahrscheinlich nur mit TikZ möglich sein oder?
Mit der Option yshift des Befehls \node. Du darfst die pmatrix-Umgebung im mathematischen Modus innerhalb der geschweiften Klammern des genannten TikZ-Befehls einsetzen. Der Knoten kann dann am Gleichheitszeichen ausgerichtet werden, welches an der mittleren Matrix ausgerichtet werden kann.
BennyS hat geschrieben:-Wie könnte ich am Ende dann alle 3 Matrizen zu einer Gleichung verbinden?
Mein Vorschlag:
\documentclass[tikz, border=5pt]{standalone}
\usepackage{upgreek}
\usetikzlibrary{matrix,positioning}
\tikzset{nodes={font=\sffamily}}
\begin{document}
\begin{tikzpicture}[
mybordermatrix/.style = {
matrix of math nodes,
left delimiter={(},
right delimiter={)},
inner xsep=0pt
}
]
\node (assignment1) {=};
% Linke Matrix
\matrix
[
mybordermatrix,
left = of assignment1,
xshift=5mm
] (left_matrix) {
\widetilde u_2 \\
\widetilde u_3 \\
\cdot \\
\cdot \\
\cdot \\
\cdot \\
\cdot \\
\cdot \\
\cdot \\
\cdot \\
\cdot \\
\cdot \\
\cdot \\
\cdot \\
\widetilde u_1 \\
\widetilde u_9 \\
\widetilde u_{19} \\
};
% Waagerechter Strich über u_1
%\draw [very thick] (left_matrix-15-1.north west) -- (left_matrix-15-1.north east);
\draw [very thick] (-1.5,-2.1) -- (-.55,-2.1);
\foreach \i/\j in {15/1, 17/3}
{
\node[left=1.2em] at (left_matrix-\i-1) {\j};
}
% Mittlere Matrix
\matrix[
matrix of nodes,
draw,
% nodes=draw,
row 1/.style={minimum height = 6cm},
column 1/.style={minimum width = 3cm},
rowheight/.style={minimum height = .5cm},
columnwidth/.style={minimum width = .5cm},
row 2/.style={rowheight},
row 3/.style={rowheight},
row 4/.style={rowheight},
column 2/.style={columnwidth},
column 3/.style={columnwidth},
column 4/.style={columnwidth},
right = of assignment1,
xshift=-8mm,
very thick,% Linienbreite
inner sep=0pt,
] (middle_matrix) {
$\upphi$ & \phantom{?} & ? & \phantom{?}\\
\phantom{O} & 1 & \phantom{1} & \phantom{1}\\
O & \phantom{1} & 1 & \phantom{1}\\
\phantom{O} & \phantom{1} & \phantom{1} & 1 \\
};
% Waagerechte Trennlinie
\draw [very thick] (middle_matrix-2-1.north west) -- (middle_matrix-2-4.north east);
% Senkrechte Trennlinie
\draw [very thick] (middle_matrix-1-1.north east) -- (middle_matrix-4-1.south east);
% Außenbeschriftung an der rechten unteren Ecke
\node [right=3.7em] at (middle_matrix-2-2) {1};
\node [right=.8em] at (middle_matrix-4-4) {3};
\node [below=.8em] at (middle_matrix-4-4) {3};
\node [below=3.7em] at (middle_matrix-2-2) {1};
% Rechte Matrix
\matrix
[
mybordermatrix,
right = of middle_matrix,
yshift=2.4cm
] (right_matrix) {
\cdot \\
\widetilde q \\
\cdot \\
\cdot \\
~\\
\widetilde u_H \\
};
% Waagerechter Strich über u_H
%\draw [very thick] (right_matrix-5-1.north west) -- (right_matrix-5-1.north east);
\draw [very thick] (5.85,2) -- (6.6,2);
% Zeichen unter den Matrizen
\node [below = of assignment1, yshift=-3.2cm] (assignment2) {=};
\node [left = of assignment2, xshift=5mm, yshift=.7mm] {$\widetilde u$};
\node [right = of assignment2, xshift=5mm, yshift=.7mm] {$T$};
\node [right = of assignment2, xshift=47mm, yshift=.7mm] {$\widetilde v$};
\end{tikzpicture}
\end{document}
Die waagerechten Striche in der linken und rechten Matrix habe ich mit festen Koordinaten angegeben, weil das Setzen der Striche im Verhältnis zum jeweiligen Knoten immer Lücken ergibt. Bislang konnte ich nicht ergründen, wie diese Leerräumen geschlossen werden können.
- Dateianhänge
-
- 3_Matrizen.png (21.67 KiB) 1757 mal betrachtet
[quote="BennyS"]-Wie kann ich den rechten Vektor/Matrix "nach oben verschieben" wie in der Zielform? Dies wird wahrscheinlich nur mit TikZ möglich sein oder?[/quote]
Mit der Option [tt]yshift[/tt] des Befehls [tt]\node[/tt]. Du darfst die [tt]pmatrix[/tt]-Umgebung im mathematischen Modus innerhalb der geschweiften Klammern des genannten TikZ-Befehls einsetzen. Der Knoten kann dann am Gleichheitszeichen ausgerichtet werden, welches an der mittleren Matrix ausgerichtet werden kann.
[quote="BennyS"]-Wie könnte ich am Ende dann alle 3 Matrizen zu einer Gleichung verbinden?[/quote]
Mein Vorschlag:
[code]\documentclass[tikz, border=5pt]{standalone}
\usepackage{upgreek}
\usetikzlibrary{matrix,positioning}
\tikzset{nodes={font=\sffamily}}
\begin{document}
\begin{tikzpicture}[
mybordermatrix/.style = {
matrix of math nodes,
left delimiter={(},
right delimiter={)},
inner xsep=0pt
}
]
\node (assignment1) {=};
% Linke Matrix
\matrix
[
mybordermatrix,
left = of assignment1,
xshift=5mm
] (left_matrix) {
\widetilde u_2 \\
\widetilde u_3 \\
\cdot \\
\cdot \\
\cdot \\
\cdot \\
\cdot \\
\cdot \\
\cdot \\
\cdot \\
\cdot \\
\cdot \\
\cdot \\
\cdot \\
\widetilde u_1 \\
\widetilde u_9 \\
\widetilde u_{19} \\
};
% Waagerechter Strich über u_1
%\draw [very thick] (left_matrix-15-1.north west) -- (left_matrix-15-1.north east);
\draw [very thick] (-1.5,-2.1) -- (-.55,-2.1);
\foreach \i/\j in {15/1, 17/3}
{
\node[left=1.2em] at (left_matrix-\i-1) {\j};
}
% Mittlere Matrix
\matrix[
matrix of nodes,
draw,
% nodes=draw,
row 1/.style={minimum height = 6cm},
column 1/.style={minimum width = 3cm},
rowheight/.style={minimum height = .5cm},
columnwidth/.style={minimum width = .5cm},
row 2/.style={rowheight},
row 3/.style={rowheight},
row 4/.style={rowheight},
column 2/.style={columnwidth},
column 3/.style={columnwidth},
column 4/.style={columnwidth},
right = of assignment1,
xshift=-8mm,
very thick,% Linienbreite
inner sep=0pt,
] (middle_matrix) {
$\upphi$ & \phantom{?} & ? & \phantom{?}\\
\phantom{O} & 1 & \phantom{1} & \phantom{1}\\
O & \phantom{1} & 1 & \phantom{1}\\
\phantom{O} & \phantom{1} & \phantom{1} & 1 \\
};
% Waagerechte Trennlinie
\draw [very thick] (middle_matrix-2-1.north west) -- (middle_matrix-2-4.north east);
% Senkrechte Trennlinie
\draw [very thick] (middle_matrix-1-1.north east) -- (middle_matrix-4-1.south east);
% Außenbeschriftung an der rechten unteren Ecke
\node [right=3.7em] at (middle_matrix-2-2) {1};
\node [right=.8em] at (middle_matrix-4-4) {3};
\node [below=.8em] at (middle_matrix-4-4) {3};
\node [below=3.7em] at (middle_matrix-2-2) {1};
% Rechte Matrix
\matrix
[
mybordermatrix,
right = of middle_matrix,
yshift=2.4cm
] (right_matrix) {
\cdot \\
\widetilde q \\
\cdot \\
\cdot \\
~\\
\widetilde u_H \\
};
% Waagerechter Strich über u_H
%\draw [very thick] (right_matrix-5-1.north west) -- (right_matrix-5-1.north east);
\draw [very thick] (5.85,2) -- (6.6,2);
% Zeichen unter den Matrizen
\node [below = of assignment1, yshift=-3.2cm] (assignment2) {=};
\node [left = of assignment2, xshift=5mm, yshift=.7mm] {$\widetilde u$};
\node [right = of assignment2, xshift=5mm, yshift=.7mm] {$T$};
\node [right = of assignment2, xshift=47mm, yshift=.7mm] {$\widetilde v$};
\end{tikzpicture}
\end{document}[/code]
Die waagerechten Striche in der linken und rechten Matrix habe ich mit festen Koordinaten angegeben, weil das Setzen der Striche im Verhältnis zum jeweiligen Knoten immer Lücken ergibt. Bislang konnte ich nicht ergründen, wie diese Leerräumen geschlossen werden können.
[img]http://golatex.de/files/3_matrizen_182.png[/img]