使用tikz术语在Gnuplot中管理奇怪的tex文件
我发现了一个奇怪的现象。如果我们运行以下gnuplot脚本(在包含gnuplot-lua-tikz-common.tex、gnuplot-lua-tikz.sty、gnuplot-lua-tikz.tex、t-gnuplot-lua-tikz.tex的文件夹中) 我们发现了以下致命错误使用tikz术语在Gnuplot中管理奇怪的tex文件,gnuplot,tikz,Gnuplot,Tikz,我发现了一个奇怪的现象。如果我们运行以下gnuplot脚本(在包含gnuplot-lua-tikz-common.tex、gnuplot-lua-tikz.sty、gnuplot-lua-tikz.tex、t-gnuplot-lua-tikz.tex的文件夹中) 我们发现了以下致命错误 ! Emergency stop. <*> test.tex ! ==> Fatal error occurred, no output PDF file produced! !紧急停止。
! Emergency stop.
<*> test.tex
! ==> Fatal error occurred, no output PDF file produced!
!紧急停止。
test.tex
! ==> 发生致命错误,未生成输出PDF文件!
无论如何,我们有test.tex文件。因此,如果我们重新运行带有#标记行注释的同一脚本,则不会得到错误和完美的test.pdf文件
在第一次执行期间,使用set term我们有一个空文件,使用replot我们填充它,但是直到执行结束,我们不能将它用作pdflatex的输入。为什么?
在第二次执行期间,我们已经有test.tex文件,因此如果我们对set term和replot进行注释,我们可以将其用作pdflatex的输入。为什么?
多谢各位 Gnuplot不会在
绘图后自动刷新并完成输出文件
因此,如果要进一步处理gnuplot脚本中的输出文件,必须事先使用set output
显式关闭该文件:
tikzfile="test.tex"
set term tikz standalone
set output tikzfile
plot x**2
set output
cmd="pdflatex -interaction=nonstopmode ". tikzfile
system(cmd)
在调用刷新输出文件的pdflatex
之前,放置一个set output
(是,不带任何参数)。另见,非常感谢@Christoph
tikzfile="test.tex"
set term tikz standalone
set output tikzfile
plot x**2
set output
cmd="pdflatex -interaction=nonstopmode ". tikzfile
system(cmd)