Ich habe einige Diagramme mit TikZ mit einer Matrix als Layout erstellt.
Bei der Verwendung von Pgf Version 2.10 lief alles reibungslos, aber jetzt verwende ich Pgf Version 3.0.0 (TexLive2013) und es gibt ein Problem, bei dem ich fast sicher bin, dass es mit der Verwendung von benutzerdefinierten Knoten als Elemente der Tabelle zusammenhängt. Das Problem besteht darin, dass ich die normale Referenz nicht verwenden kann ((matrixName)-(rowNum)-(colNum))
, da sie nicht verfügbar ist.
Ich habe mein Dokument auf ein MWE reduziert:
\documentclass[12pt]{standalone}
\usepackage{tikz}
\usetikzlibrary{shapes.geometric, matrix}
\tikzset{newIdea/.style={rectangle, fill=blue!90},
newPlan/.style={rectangle, rounded corners=2mm, text=white, fill=blue!90}
}
\begin{document}
\begin{tikzpicture}
\matrix (magic) [matrix of nodes, column sep=10mm]
{
\node[newIdea] {8}; & \node[newPlan] {1}; & \node[newIdea] {6}; \\
};
\draw[thick,red,->] (magic-1-1) |- (magic-1-2);
\end{tikzpicture}
\end{document}
Mit Pgf 2.10 funktioniert alles, mit Pgf 3.0.0 erhalte ich folgende Fehlermeldung:
Paket-pgf-Fehler: Keine Form mit dem Namen magic-1-1 bekannt.
Antwort1
matrix of nodes
Seit Version 3.0.0 scheint dies bei der Verwendung von a \node
innerhalb von Zellen nicht zulässig zu sein (ich mochte diese Funktion zunächst nicht (ich hoffe, es ist eine Funktion und kein Fehler), aber nachdem ich darüber nachgedacht habe, macht sie irgendwie vollkommen Sinn); Sie können jedoch weiterhin die |[<options>]|
Syntax verwenden, um die Knoten zu ändern:
\documentclass[12pt]{standalone}
\usepackage{tikz}
\usetikzlibrary{shapes.geometric, matrix}
\tikzset{newIdea/.style={rectangle, fill=blue!90},
newPlan/.style={rectangle, rounded corners=2mm, text=white, fill=blue!90}
}
\begin{document}
\begin{tikzpicture}
\matrix (magic) [matrix of nodes, column sep=10mm]
{
|[newIdea]|8 & |[newPlan]|1 & |[newIdea]|6 \\
};
\draw[thick,red,->] (magic-1-1) |- (magic-1-2);
\end{tikzpicture}
\end{document}