我正在使用带有终端 epslatex 的 gnuplot 来绘制包含 LaTeX 标签的图形。
特别是我在 Y tic 上发现了类似的东西:
$\\frac{ L_{seq} }{ 8 }$
一切正常,但输出图在 Y 轴标签和 Y 刻度之间有很多空白。
我猜这是因为 gnuplot 将其解析$\\frac{ L_{seq} }{ 8 }$
为普通字符串并为其保留空间,但生成的字符串(在 pdflatex 呈现之后)实际上会更短。
有什么办法可以解决这个问题吗?
答案1
根据我的经验,最好让图形程序(如 gnuplot)使用它们自己的(非 LaTeX)标签,然后使用 替换这些标签psfrag
。psfrag
这样您就可以将要替换的对象的左/右/中心与替换的左/右/中心对齐。因此,在 gnuplot 中尝试
set term postscript eps mono
set output 'myplot.eps'
set ylabel 'Y'
plot x**3
然后在你的文档中
\usepackage{psfrag}
...
\psfrag{Y}[r][r]{$y=x^3$}
\includegraphics{myplot}
答案2
使用下面的代码在 Y 轴上制作两个刻度。它工作正常。
set label "$U_{in}$" right at graph 0, first 3.4 offset character -1,0
set ytics add ("" 3.4)
set ytics add ("" 3.4/sqrt(2))
set label "$\\frac{U_{in}}{\\sqrt{2}}$"right at graph 0, first 3.4/sqrt(2) offset character -1,0
答案3
这个答案与 LaTeX 没有直接关系,而是 gnuplot 方面的一个丑陋的解决方法。当我使用 gnuplot 的 epslatex 终端时,我遇到了这个问题,我“解决”了向轴标签添加偏移量,如下所示:
set ylabel 'axis label' offset 2,0
其中 x 偏移量(示例中为数字 2)是通过反复试验找到的。
(正如评论中已经提到的,有更优雅的替代方法可以在(La)TeX 文档中包含图表:我个人已经改用 pgfplots。)