graphs
同じドキュメントでTikZ ライブラリを使用する必要がありますshapes
。しかし、互換性がないようです。これは、ライブラリを積極的に使用するgraphs
が、ライブラリを必要としない最小限の例です。とにかく、ライブラリがロードされるshapes
とすぐにコンパイルが失敗します。shapes
これは最小限の例です:
\documentclass{minimal}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage[utf8]{inputenc}
\usepackage{tikz}
% If the TikZ library 'shapes' is loaded, compilation fails
\usetikzlibrary{shapes,matrix,graphs}
%\usetikzlibrary{matrix,graphs}
\begin{document}
\begin{tikzpicture}
\matrix { \node(foo) {foo}; \\ \node(bar) {bar}; \\ };
\graph[use existing nodes] { foo -> bar; };
\end{tikzpicture}
\end{document}
エラーメッセージは
! Missing \endcsname inserted
<to be read again>
\tikz@lg1
l.17 \graph[use existing nodes] { foo -> bar; };
私は LaTeX ディストリビューションにバンドルされているパッケージ バージョンを使用します。つまり、次のようになります。
- ミクテックス 2.9
- pgf 2008/01/15 v2.10 (rcs-リビジョン 1.12)
- tikzlibraryshapes.code.tex 2008/01/09 v2.10 (rcs-リビジョン 1.1)
- tikzlibrarymatrix.code.tex 2008/06/18 v2.10 (rcs-リビジョン 1.2)
- tikzlibrarygraphs.code.tex 2010/10/23 v2.10 (rcs-リビジョン 1.1)
何か案は?
答え1
これは MikTex バンドルのバグのようです。次のガイドに従って、SourceForge から PGF/TikZ の最新かつ安定したバージョンをインストールしました。http://docs.miktex.org/manual/localadditions.htmlそして今は動作しています。