首页 > 解决方案 > 将gnuplot与latex结合:方法和输出

问题描述

我正在运行以下脚本:

#!/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

输出

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


输出 2

更改latexcairolatex pdf建议@Ethan Merritt返回:

输出2

这要好得多。

标签: latexgnuplot

解决方案


gnuplot 最初的 Latex 终端,你可以通过说“set term latex”得到的终端,按照现代标准来说是可怕的。使用较新的之一。我最喜欢的是 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 开始。


推荐阅读