2016-02-22 52 views
0

我已查看过有关此主题的许多帖子,但尚未找到答案。我通常对这些问题很有应变能力,但不得不承认在这一问题上失败。我无法将.dat文件转换为正确的胶乳代码。我的gnuplot输入代码看起来像无法使用epslatex gnuplot进行绘图

plot "file.dat" using 1:6 with lines 
set terminal epslatex 
set output "output.tex" 
set label "$\alpha$" 
set out 

这会根据需要生成.tex和.eps文件。当我打开里面空空如也的plot.pdf

\documentclass{article} 
\usepackage{graphics} 
\usepackage{epstopdf} 

\begin{document} 
\include{output.tex} 
\end{document} 

:我现在编译pdflatex一个plot.tex文件和下面的代码。在pdflatex complilation中也没有错误。 .dat文件肯定有数据,我相信问题出在了火线图代码上。我无法绘制epslatex终端中的.dat文件,相应的.eps文件为空。如果有人能告诉我如何做到这一点很好。我可以很容易地将数据保存为.EPS文件,但我真正想要的乳胶xlabels等

干杯

杰克

回答

1

几个问题:

  • 当您发出的gnuplot命令plot,它会在那里进行绘图,但是它已经被配置。在配置任何东西之前,您正在脚本的一开始就这样做。定义您的终端类型,标题,范围等,然后将plot命令放在最后。这可能看起来很混乱,但gnuplot脚本就是这样:脚本。它一行一行地执行。这使您可以在plot命令后更改设置,然后在其他地方使用稍微不同的设置在另一个地方创建另一个plot(即另一个输出文件)。

  • 指令set outset output的简称(...为空)。我不知道为什么你想在你做了set output "output.tex"之后将输出设置为空。

  • 你可能想的“α”一个标题轴标签而不是标签的“阿尔法”。您将标题设置为set title。也有x - 和y您可以使用set xlabelset ylabel设置的轴标签。 gnuplot有实际的“标签”,但是这具有一定的技术含义(文本放置在特定坐标处)。

  • 也许您打算标记数据集“α”而不是标题为“α”。然后将title "$\\alpha$"附加到plot行。 gnuplot会发明一个标题,除非你指定一个或使用关键字notitle

  • 你要逃跑,在gnuplot的字符串反斜杠(\\而不是\),如果你想给它胶乳。使用$\\alpha$而不是$\alpha$

总之,尝试这样的事情:

set terminal epslatex 
set output "output.tex" 
set title "Impressive Results of $\\alpha$" 
plot "file.dat" with lines title "$\\alpha$" 

而且,我是你的LaTeX文档中遇到了麻烦与\include{output.tex}。您不需要指定文件扩展名。我习惯于使用graphicx包,但每个包都是他自己的。所以这工作对我来说:

\documentclass{article} 
\usepackage[pdftex]{graphicx} 

\begin{document} 
\include{output} 
\end{document} 

我希望这可以让你开始工作。

+1

'\ include {output}'是对的。添加文件扩展名会混淆LaTeX。 – vaettchen