PGFPLOT 外部化不起作用

PGFPLOT 外部化不起作用

我正在尝试使用 latex 将 PGF Plot 外部化并保存为 EPS 文件并启用 shell-escape。

    \documentclass[a4paper]{article}
    \usepackage{lipsum}
    \usepackage{tikz}
    \usepackage{pgfplots}
    \usepgfplotslibrary{external}
    \tikzexternalize%[prefix=fig/]
    \tikzset{external/system call={latex -shell-escape -interaction=nonstopmode -jobname="\image" "\texsource" ; dvips -o "\image".ps "\image".dvi ; ps2eps -f "\image".ps && mv "\image".eps "\image"}} 

    \pgfplotsset{ compat=1.8,  tick label style={font=\small},  label style={font=\small}, legend style={font=\footnotesize}}
    \tikzexternalize[prefix=fig/] 
    \title{\LaTeX\ plots with \texttt{tikz} and \texttt{pgfplots}}
    \author{Roel Van Beeumen}
    \date{April 17, 2012}

    \begin{document}
    %\tikzsetnextfilename{filename}
    \tikzset{external/force remake}
    \maketitle


    % == A first plot ======================================== %
    \section{A first plot}

    \lipsum[1]
    \begin{figure}[h]
    \centering
    % -------------------------------------------------------- %
    \begin{tikzpicture}
    \begin{axis}[xlabel=$x$,ylabel=$\sqrt{|x|}$, axis x line=bottom,axis y line=left, ymax=2.1,xmax=4.4]
    \addplot[blue,mark=none,domain=-4:4,samples=201] {sqrt(abs(x))};
    \end{axis}
    \end{tikzpicture}
    % -------------------------------------------------------- %
    \end{figure}
    \lipsum[2]



    % == A second plot ======================================= %
    \section{A second plot}

    \lipsum[3]
    \begin{figure}[h]
    \centering
    % -------------------------------------------------------- %
    \begin{tikzpicture}
    \begin{loglogaxis}[xlabel=Dof,ylabel=Error,width=\textwidth]
    \addplot file{datafile1a.dat};
    \addplot file{datafile1b.dat};
    \legend{Case 1,Case 2}
    \end{loglogaxis}
    \end{tikzpicture}
    % -------------------------------------------------------- %
    \end{figure}
    \lipsum[4-5]



    % == A third plot ======================================== %
    \section{A third plot}

    \lipsum[6]
    \begin{figure}[hbtp]
    \centering
    % -------------------------------------------------------- %
    \begin{tikzpicture}
    \begin{loglogaxis}[xlabel=Dof,ylabel=Error,width=\textwidth]
    \addplot table[x=dof1,y=error1] {datafile2.dat};
    \addplot table[x=dof2,y=error2] {datafile2.dat};
    \legend{Case 1,Case 2}
    \end{loglogaxis}
    \end{tikzpicture}
    % -------------------------------------------------------- %
    \end{figure}
    \lipsum[7]


    \end{document}  

但是,在装有 TeX Live 2013 的 Linux Mint 16 中使用 latex -shell-escape 执行此操作时,每个图都出现以下错误。

! 软件包 tikz 错误:抱歉,系统调用“latex -shell-escape -interaction= nonstopmode -jobname="untitled-1-figure2" "\def\tikzexternalrealjob{untitled-1} \input{untitled-1}" ; dvips -o "untitled-1-figure2".ps "untitled-1-figure2".dvi ; ps2eps -f "untitled-1-figure2".ps && mv "untitled-1-figure2".eps "untitled-1 -figure2"”未产生可用的输出文件“untitled-1-figure2”(预期为 epsi:eps:ps 之一)。请确认您已启用系统调用。对于 pd flatex,这是“pdflatex -shell-escape”。有时它也被命名为“write 18”或类似名称。或者也许命令只是失败了?错误消息可以在“untitled-1-figure2.log”中找到。如果你现在继续,我会尝试排版图片。

但是如果我按返回密钥,它成功生成了 EPS 文件。我尝试了很多次,但没有成功。请帮助我。

相关内容