结合gnuplot和Latex:方法和输出

时间:2018-10-14 19:33:11

标签: latex gnuplot

我正在运行以下脚本:

#!/bin/bash
gnuplot -e "set t latex ; set size 0.5,1; set output 'grafico.tex';
 set xtics ('$\frac{-\pi}{2}$' -pi/2, 0, '$\frac{\pi}{2}$' pi/2); set xrange [-pi/2:pi/2]; 
 set yrange [-2:2]; set ylabel '$ f(x)$'; set xlabel '$\theta$';
plot sin(x); pause -1 'hit return to continue'"
pdflatex latex
atril latex.pdf

输出1

output

作为编程和gnuplot的初学者,我想确保这是正确的方法。我的疑问来自输出,它看起来不太好(分辨率,主要)。我缺少任何简单的改进吗?为改进绘图技术和提高结果而进行的任何更改都将受到欢迎。


输出2

根据建议@Ethan Merrittlatex更改为cairolatex pdf会返回:

out2

那更好。

1 个答案:

答案 0 :(得分:7)

gnuplot的原始乳胶终端,您通过说“设定术语乳胶”而获得的终端,按照现代标准来说是可怕的。使用较新的之一。我最喜欢的是tikz终端:

gnuplot>

set term tikz standalone size 5cm, 7cm
set output 'grafico.tex'
set xtics ('$\frac{-\pi}{2}$' -pi/2, 0, '$\frac{\pi}{2}$' pi/2)
set xrange [-pi/2:pi/2]; set yrange [-2:2];
set ylabel '$ f(x)$'; set xlabel '$\theta$';
plot sin(x)
unset output
system("pdflatex grafico")

注意:

  • 您可能应该将大小设置为set term命令的一部分。如果您使用set size,则输出将包含较大的空白区域

  • 您的gnuplot本地副本可能不支持tikz终端。在这种情况下,您可以使用set term cairolatex pdf来代替其他所有内容。

  • gnuplot也有其他(太多!)基于乳胶的终端,但我建议从tikz或cairolatex开始。