【问题标题】:Combine gnuplot with latex: method and output将gnuplot与latex结合:方法和输出
【发布时间】:2018-10-14 19:33:11
【问题描述】:

我正在运行以下脚本:

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

按照@Ethan Merritt 的建议将latex 更改为cairolatex pdf 返回:

哪个更好。

【问题讨论】:

    标签: latex gnuplot


    【解决方案1】:

    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 开始。

    【讨论】:

    • 取消设置输出“关闭”文件?是否有任何理由避免使用 bash 执行脚本?
    • 是的,未设置的输出将关闭文件。在窗口中输入 bash 脚本太难了 :-) 我更喜欢避免额外的解释层和变量替换。
    猜你喜欢
    • 2013-08-26
    • 1970-01-01
    • 1970-01-01
    • 2013-11-16
    • 2015-05-15
    • 2017-04-28
    • 2020-02-03
    • 1970-01-01
    • 2016-04-06
    相关资源
    最近更新 更多