2016-02-22 87 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