外部化された pgfplots 画像への参照を取得して動作させることはできますか?

外部化された pgfplots 画像への参照を取得して動作させることはできますか?

TikZ と で作成したプロットがいくつかありますpgfplots。キャプションでは、\ref{...}プロット ラベルを使用してマーカーをそこに印刷します。これは実に便利な機能です。

現在、arXiv に提出する場合、ひどく時代遅れの TeX Live (この記事の執筆時点では 2011) でドキュメントをコンパイルするために、いくつかのハードルを乗り越える必要があります。特に、TikZ は大きく進化しており、図の PDF を LaTeX ソースと一緒にアップロードすると、問題をうまく回避できるため、私は TikZ 外部化を使用しています。

問題は、pgfplotsプロットやそのラベルへの参照が解決できず、(??)マーカーの代わりに が表示されることです。言うまでもなく、この問題はローカルでは発生しません。

これは回避できるものなのでしょうか (arXiv のマーカーをハードコーディングする以外)、それともそのまま受け入れる必要があるのでしょうか (つまり、参照メカニズムを使用する代わりにマーカーをハードコーディングする)?

arXiv への偽の投稿は妥当ではないと考えているため、私は MWE を与えません。

答え1

現在の (3.0.0) TikZ マニュアルには次のように書かれています:

[\labelメイン ドキュメントで参照される外部化されたグラフィックス内] は、外部ライブラリによって自動的に実現されます。詳細には、\label外部化されたグラフィックスの内部により、外部ライブラリは外部イメージごとに個別の補助ファイルを生成します。これらのファイルは と呼ばれます。[...] メイン ドキュメントがイメージをロードすると、そのファイルがメイン ファイルにimagename.dpthコピーされます。.dpth.aux

そのため、外部の数字があらかじめ用意された文書を発送する場合は、PDFとそして dpthファイル。

答え2

ラファエルの自己回答は、それを適切に行う方法を示しています。


残念ながら、私たちは時々、(セキュリティ上の理由により)アップロードできるファイルの種類が制限されているシステム(例えば、「editorial manager」では .dpth で終わるファイル名は許可されない)や、TikZ 外部化がまったくない古い LaTeX バージョンを使用するシステムに対処しなければならないことがあります。

もしあなたがそのような不運な状況に陥った場合、私の次のハックトラブルを回避できるかもしれません。

に外部化された画像があり、 がexternal.pdf付属しているとしますexternal.dpthexternal.dpthに名前を変更しexternal.tex、TikZ画像を に置き換えます。

\includegrapics{external}
\tikzexternalhack{external}

プレファブルで次の定義を使用します。

\makeatletter
\newcommand\tikzexternalhack[1]{%
    \write\@auxout{\noexpand\input{#1}}%
}
\makeatother

関連情報