Комбинируйте gnuplot с латексом: метод и вывод - PullRequest
0 голосов
/ 14 октября 2018

Я запускаю следующий скрипт:

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

Asновичок как в программировании, так и в gnuplot, Я хочу быть уверен, что это правильный путь. Мои сомнения связаны с выводом, он выглядит не очень хорошо (в основном, разрешение).Есть ли какое-то простое улучшение, которое я пропускаю?Любые изменения, улучшающие технику построения графиков и улучшающие результат, будут приветствоваться.


Вывод 2

Изменение latex на cairolatex pdf в соответствии с рекомендациями @ Ethan Merritt возвращает:

out2

, что намного лучше.

1 Ответ

0 голосов
/ 15 октября 2018

Оригинальный латексный терминал 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 иликайролатекс.

...