You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Gnuplot epslatex输出路径问题:\includegraphics含多余相对路径

Gnuplot epslatex终端相对路径输出的引用问题

用Gnuplot的epslatex终端输出带相对路径的文件时,会出现一个问题:如果把.tex和.eps文件指定保存到上级两级目录,比如这么写:

set terminal epslatex color size 6, 3
# 其他绘图配置
set output "../../filename.tex"
# 执行绘图

生成的../../filename.tex里,\includegraphics命令会带着同样的相对路径:

% ...
\put(0,0){\includegraphics{../../filename}}%
% ...

但实际上tex和eps文件已经在../../目录了,LaTeX编译时会从这个目录再往上两级找文件,自然找不到目标eps。

两种临时解决办法

方法1:用终端的file参数单独指定图形名

设置终端时,通过file选项指定eps文件的名称(不带路径),这样生成的tex文件里的引用就只会用这个文件名,不会带路径:

set terminal epslatex color size 6, 3 file "filename"
set output "../../filename.tex"
# 绘图命令

这样生成的tex文件里的引用就变成:

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

eps文件也会和tex一起存到../../目录,路径完全正确。

方法2:先在当前目录生成,再移动文件

先在当前目录生成tex和eps,之后用命令行把两个文件移到目标目录:

set terminal epslatex color size 6, 3
set output "filename.tex"
# 绘图命令
set output  # 关闭输出文件

然后执行移动命令:

mv filename.tex filename.eps ../../

因为两个文件在同一目录,tex里的\includegraphics{filename}引用完全正常。

功能改进建议

希望Gnuplot后续版本能支持分开设置:一个参数指定文件保存的路径,另一个参数指定LaTeX引用时用的文件名,从根源上避免这种相对路径导致的引用错误。

内容的提问来源于stack exchange,提问作者Alberto López

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.13 22:52:34