.eps 文件未使用 epslatex 生成

.eps 文件未使用 epslatex 生成

我正在尝试使用 gnuplot 界面绘制图表epslatex,其中我使用 latex 命令标记 y 轴,然后将图表包含在另一个 TeX 文件中。我正在编写以下步骤,但不知何故.eps没有生成文件,只.tex生成了文件。请帮忙。

reset
set terminal epslatex
set term postscript colour enhanced 
set term postscript eps enhanced 26
set output "pb_sp_I=6.tex"


set style data lines
set size 1,1
set origin 0,0
set multiplot
set size 1,1
set origin 0,0
set log

set xlabel "t" font "Times-Roman,30"
set ylabel "$P_t(\\ell)$" 

set format y  "10^{%L}"
set format x  "10^{%L}"

set xr [0.1:10000]
set yr [0.000001:1.2] 

p 'sp_I=6.out' u 1:2 w l title 'I=6' lc 1 lw 2, 1800/x**1.5 lw 2 title 't^{-1.5}', 1.7/x**0.5 lw 2 title 't^{-0.5}'

我删除了

set term postscript eps enhanced

现在它生成了 2 个文件,pb_sp_I=6.epspb_sp_I=6.tex。然后我将 EPS 转换为 PDF。我将.tex上面的文件包含在另一个.tex文件中,例如a.tex,通过编写以下内容:

\begin{center}
\input{pb_sp_I=6.tex}
\end{center}

然后我使用以下命令编译 a.tex:

pdflatex a.tex

但是输出仅包含带有轴、刻度、线的图形文件,但 latex () 中的 y 轴标签$P_t(\\ell)$不存在。如果我遗漏了什么,请告知。

答案1

你的gnuplot脚本有很多缺陷:

  • 您只能使用一个终端,因此set term postscript应该删除这些线条;
  • 避免在文件中使用下划线,因为它们会导致问题;
  • 应该关闭模式multiplot并重置输出,否则输出文件将不会被关闭;
  • 正如指出的那样克里斯托弗set origins 和set sizes 是无用的;
  • 你必须用美元符号包裹所有标签,否则^会引发错误。

这是您的脚本的修订版本gnuplot

reset
set terminal epslatex color colortext
set output "pbspI=6.tex"

set style data lines
set multiplot
set log

set xlabel "$t$"
set ylabel '$P_\ell(t)-P_\ell(\infty)$'

set format y  '$10^{%L}$'
set format x  '$10^{%L}$'

set xr [0.1:10000]
set yr [0.000001:1.2] 

plot 'sp_I=6.out' u 1:2 w l title '$\ell=6,N=20$' lc 1 lw 2, \
     1800/x**1.5 lw 2 title '$t^{-1.5}$', \
     1.7/x**0.5 lw 2 title '$t^{-0.5}$'
unset multiplot
set output

这是.tex包含图片的文件:

\documentclass{article}
\usepackage{graphicx}
\begin{document}
\begin{figure}
  \centering
  \input{pbspI=6.tex}
\end{figure}
\end{document}

相关内容