当图形位于不同的目录中时,使用 gnuplot-cairolatex 生成的图形无法正确显示

当图形位于不同的目录中时,使用 gnuplot-cairolatex 生成的图形无法正确显示

我使用gnuplot术语cairolatex来创建图形并将其合并到我的 LaTeX 项目中。此终端返回两个文件。一个是*.tex,另一个是*.svg

但是当我尝试将项目组织到不同的目录中时,我遇到了麻烦。例如,我\fig为所有图形创建了一个文件夹。为了包含它们,我使用了下面的代码。

\begin{figure}[H]
  \centering
  \scalebox{0.55}{\input{project/fig/fig1.tex}}
  \caption{some caption}
  \label{fig:some label}
\end{figure}

但是当我这样做时,即使两个文件都在目录中,project/fig/似乎也只是*.tex导入了文件。

我有类似这样的事情:

我得到了什么

但我期待的是这个:

我期望

这有点烦人,因为有时我必须管理多个数字。

答案1

如果你查看文件内部fig1.tex,你会发现这样的一行

\put(0,0){\includegraphics{fig1}}%

这意味着 TeX 期望文件fig.svgfig1.pdf位于当前目录,即主 tex 文件所在的目录。但是,该文件位于project/fig/目录中,因此 TeX 找不到它。

尝试将子目录添加到graphicspath

\graphicspath{{project/fig1/}{another subdirectory}{yet another directory}...}

另一种选择是直接编辑 gnuplot 生成的 tex 文件以给出所包含图形文件的明确位置。

相关内容