可能的重複:
使用 epstopdf 找不到 Gnuplot 子目錄
您好,我一直在遵循使用 gnuplot 4.6 將高品質圖表插入我的文件中的流程。這就是我一步一步所做的:
我創建了一個
sample.gp
文件,其原始碼如下:set terminal epslatex set output 'test.tex' f(x) = sin(x) plot f(x)
我使用轉換原始檔
gnuplot sample.gp
並得到了 2 個名為測試.eps和測試文件。但.eps格式不適合我,因為我想使用 PDFLatex 編譯 Latex 文件。這就是為什麼我使用 Ghostscript 命令
ps2pdf13 -dEPSCrop test.eps test.pdf
來產生 PDF 文件測試.pdf。我包括了我的測試文件使用一行程式碼進入乳膠文檔
\input{test.tex}
使用 PDFLatex 編譯後出現錯誤:
test.tex:96: 找不到檔案“測試”,\put(0,0){\includegraphics{test}}
我很困惑,因為圖片測試.pdf與以下內容位於同一資料夾中測試文件,但兩者都位於我的 Latex 根資料夾的子資料夾「圖片」中。
那麼這裡是原始碼測試文件gnuplot 產生的。我希望它有幫助。報告錯誤的行位於文件末尾附近。
% GNUPLOT: LaTeX picture with Postscript
\begingroup
\makeatletter
\providecommand\color[2][]{%
\GenericError{(gnuplot) \space\space\space\@spaces}{%
Package color not loaded in conjunction with
terminal option `colourtext'%
}{See the gnuplot documentation for explanation.%
}{Either use 'blacktext' in gnuplot or load the package
color.sty in LaTeX.}%
\renewcommand\color[2][]{}%
}%
\providecommand\includegraphics[2][]{%
\GenericError{(gnuplot) \space\space\space\@spaces}{%
Package graphicx or graphics not loaded%
}{See the gnuplot documentation for explanation.%
}{The gnuplot epslatex terminal needs graphicx.sty or graphics.sty.}%
\renewcommand\includegraphics[2][]{}%
}%
\providecommand\rotatebox[2]{#2}%
\@ifundefined{ifGPcolor}{%
\newif\ifGPcolor
\GPcolorfalse
}{}%
\@ifundefined{ifGPblacktext}{%
\newif\ifGPblacktext
\GPblacktexttrue
}{}%
% define a \g@addto@macro without @ in the name:
\let\gplgaddtomacro\g@addto@macro
% define empty templates for all commands taking text:
\gdef\gplbacktext{}%
\gdef\gplfronttext{}%
\makeatother
\ifGPblacktext
% no textcolor at all
\def\colorrgb#1{}%
\def\colorgray#1{}%
\else
% gray or color?
\ifGPcolor
\def\colorrgb#1{\color[rgb]{#1}}%
\def\colorgray#1{\color[gray]{#1}}%
\expandafter\def\csname LTw\endcsname{\color{white}}%
\expandafter\def\csname LTb\endcsname{\color{black}}%
\expandafter\def\csname LTa\endcsname{\color{black}}%
\expandafter\def\csname LT0\endcsname{\color[rgb]{1,0,0}}%
\expandafter\def\csname LT1\endcsname{\color[rgb]{0,1,0}}%
\expandafter\def\csname LT2\endcsname{\color[rgb]{0,0,1}}%
\expandafter\def\csname LT3\endcsname{\color[rgb]{1,0,1}}%
\expandafter\def\csname LT4\endcsname{\color[rgb]{0,1,1}}%
\expandafter\def\csname LT5\endcsname{\color[rgb]{1,1,0}}%
\expandafter\def\csname LT6\endcsname{\color[rgb]{0,0,0}}%
\expandafter\def\csname LT7\endcsname{\color[rgb]{1,0.3,0}}%
\expandafter\def\csname LT8\endcsname{\color[rgb]{0.5,0.5,0.5}}%
\else
% gray
\def\colorrgb#1{\color{black}}%
\def\colorgray#1{\color[gray]{#1}}%
\expandafter\def\csname LTw\endcsname{\color{white}}%
\expandafter\def\csname LTb\endcsname{\color{black}}%
\expandafter\def\csname LTa\endcsname{\color{black}}%
\expandafter\def\csname LT0\endcsname{\color{black}}%
\expandafter\def\csname LT1\endcsname{\color{black}}%
\expandafter\def\csname LT2\endcsname{\color{black}}%
\expandafter\def\csname LT3\endcsname{\color{black}}%
\expandafter\def\csname LT4\endcsname{\color{black}}%
\expandafter\def\csname LT5\endcsname{\color{black}}%
\expandafter\def\csname LT6\endcsname{\color{black}}%
\expandafter\def\csname LT7\endcsname{\color{black}}%
\expandafter\def\csname LT8\endcsname{\color{black}}%
\fi
\fi
\setlength{\unitlength}{0.0500bp}%
\begin{picture}(7200.00,5040.00)%
\gplgaddtomacro\gplbacktext{%
\csname LTb\endcsname%
\put(462,440){\makebox(0,0)[r]{\strut{} 0}}%
\put(462,1307){\makebox(0,0)[r]{\strut{} 1}}%
\put(462,2174){\makebox(0,0)[r]{\strut{} 2}}%
\put(462,3041){\makebox(0,0)[r]{\strut{} 3}}%
\put(462,3908){\makebox(0,0)[r]{\strut{} 4}}%
\put(462,4775){\makebox(0,0)[r]{\strut{} 5}}%
\put(594,220){\makebox(0,0){\strut{} 0}}%
\put(1836,220){\makebox(0,0){\strut{} 2}}%
\put(3078,220){\makebox(0,0){\strut{} 4}}%
\put(4319,220){\makebox(0,0){\strut{} 6}}%
\put(5561,220){\makebox(0,0){\strut{} 8}}%
\put(6803,220){\makebox(0,0){\strut{} 10}}%
}%
\gplgaddtomacro\gplfronttext{%
\csname LTb\endcsname%
\put(5816,4602){\makebox(0,0)[r]{\strut{}f(x)}}%
}%
\gplbacktext
\put(0,0){\includegraphics{test}}%
\gplfronttext
\end{picture}%
\endgroup
答案1
經過一些研究後我發現測試文件由 gnuplot 產生的一行\put(0,0){\includegraphics{test}}%
應該包含測試.pdf圖像。
我認為如果一個命令\includegraphics{test}
用於測試文件的目的地測試.pdf將相對於目的地測試文件它位於我的 Latex 根資料夾的子資料夾「圖片」中。
\input{./pictures/test}
但因為我在主 Latex 文件中使用了命令,所以其中的命令\includegraphics{test}
目的地變得相對於我的根 Latex 資料夾。
Soo我可以很容易地解決修改裡面的一行的問題測試文件變成\put(0,0)\includegraphics{./pictures/test}
.