Verzerrung der Abstände in TikZ Matrix zwischen Zeilen
Hallo zusammen,
ich habe zwei Matrizen erstellt, die unterschiedlich viele Elemente enthalen (3 in der linken Matrix und 5 in der rechten Matrix). Die Größen und die row seperation habe ich jedoch so gewählt, dass die beiden Matrizen theoretisch gleich hoch sein sollten, nämlich 7 cm. 7 cm ergeben sich bei der linken Matrix aus der Höhe der Elemente + der Höhe der Abstände zwischen den Elementen = 1cm + 0,5cm + 1cm +0,5cm + 4cm. Analog bei der rechten Matrix: 1 cm + 0,5 cm + 1 cm + 0,5 cm + 1 cm + 0,5 cm + 1 cm + 0,5 cm + 1 cm = 7 cm. So sollte es sein, ist es jedoch nicht. Die rechte Matrix ist ein kleines Stück größer, weil sie mehr Elemente enthält und zu jedem Element scheinbar ein zusätzlicher kleiner Abstand addiert wird. Dies lässt sich, wenn man genau hinsieht am Grid erkennen, aber bspw. auch an dem nicht perfekt horizontalen Pfeil von "mit. Elem. 5" zu "rechtes Element 5". Auch die linke Matrix ist nicht exakt 7 cm hoch, sondern 7 cm + x. Wie lässt sich diese Ungenauigkeit erklären und vorallem verhindern, sodass beide Matrizen genau 7 cm hoch sind?
Hier das MB. Vielen Dank schonmal.
\documentclass{scrbook}
\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage[ngerman]{babel}
\usepackage{amsmath}
\usepackage{tikz}
\usetikzlibrary{calc}
\tikzset{
*|/.style={to path={(\tikztostart-|\tikztotarget) -- (\tikztotarget) \tikztonodes}},
*-/.style={to path={(\tikztostart|-\tikztotarget) -- (\tikztotarget) \tikztonodes}}}
\begin{document}
\begin{tikzpicture}[
reklein/.style={rectangle,draw,minimum width=4cm,minimum height=1cm,anchor=north west,align=center},
rerund/.style={rectangle,draw,minimum width=3cm,anchor=center,align=center},
pfeil/.style={semithick,->,shorten >=5pt,shorten <=5pt}]
% Grid
\draw[step=0.5cm,very thin,gray] (0,0) grid(14,20);
% linke Matrix
\matrix(mat)[row sep=5mm,column sep=5cm,anchor=north west,inner sep=0mm] at (0,14){
\node [reklein](prod1) {linkes Element 1};\\
\node [reklein](prod2) {linkes Element 2};\\
\node [reklein,minimum height=4cm](prod3) {linkes Element 3}; \\
};
% rechte Matrix
\matrix(mat)[row sep=5mm,column sep=5cm,anchor=north east,inner sep=0mm] at (14,14){
\node [reklein](prod4) {rechtes Element 1};\\
\node [reklein](prod5) {rechtes Element 2};\\
\node [reklein](prod6) {rechtes Element 3};\\
\node [reklein](prod7) {rechtes Element 4};\\
\node [reklein](prod8) {rechtes Element 5};\\
};
% mittlere Elemente
\node [rerund] (rund1) at ($0.5*(prod1)+0.5*(prod4)$) {mit. Elem. 1};
\node [rerund] (rund2) at ($0.5*(prod2)+0.5*(prod5)$) {mit. Elem. 2};
\node [rerund] (rund3) at ($(rund2)-(0,1.5)$) {mit. Elem. 3};
\node [rerund] (rund4) at ($0.5*(prod3)+0.5*(prod7)$) {mit. Elem. 4};
\node [rerund] (rund5) at ($(rund4)-(0,1.5)$) {mit. Elem. 5};
% Verbindungen über Pfeile
\draw [pfeil] (rund1) to (prod1);
\draw [pfeil] (rund1) to (prod4);
\draw [pfeil] (rund2) to (prod2);
\draw [pfeil] (rund2) to (prod5);
\draw [pfeil] (rund3.west) to (prod3);
\draw [pfeil] (rund3) to (prod6);
\draw [pfeil] (rund4) to (prod3);
\draw [pfeil] (rund4) to (prod7);
\draw [pfeil] (rund5.west) to (prod3);
\draw [pfeil] (rund5) to (prod8);
\end{tikzpicture}
\end{document}