私はレイアウトとしてマトリックスを使用した TikZ を使用していくつかの図を作成しています。
Pgf バージョン 2.10 を使用している間はすべてうまくいきましたが、現在 Pgf バージョン 3.0.0 (TexLive2013) を使用しているところ、テーブルの要素としてカスタム スタイルのノードを使用することに関連していると思われる問題が発生しています。問題は、通常の参照が利用できないことです((matrixName)-(rowNum)-(colNum))
。
ドキュメントを MWE に縮小しました:
\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}
Pgf 2.10 を使用するとすべて動作しますが、Pgf 3.0.0 を使用すると次のエラー メッセージが表示されます。
パッケージ pgf エラー: magic-1-1 という名前のシェイプが認識されていません。
答え1
バージョン 3.0.0 以降では、 を使用する場合、セル内では が許可されていないmatrix of nodes
ようです\node
(最初はこの機能が気に入りませんでした (バグではなく機能であることを願います) が、よく考えてみると、ある意味完全に理にかなっています)。ただし、|[<options>]|
ノードを変更するには、次の構文を使用できます。
\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}