2015-11-20 2 views
2

Чтобы сделать заполненные кривые только в выбранных областях функционального параметра (по оси x), я нашел хорошую идею с фильтром в потоке «Заполните несколько разделов ниже кривая данных в Gnuplot ".Долларовый знак из кода gnuplot порождает конфликт с epslatex

Проблема в том, что при использовании epslatex используемый знак $ указывает на переменную, создавая ошибку при попытке скомпилировать с помощью латекса.

Есть ли другая возможность обратиться к переменной?

set samples 100 
set xrange [-2:2] 
f(x) = -x**2 + 4 

set linetype 1 lc rgb '#A3001E' 

set style fill transparent solid 0.35 noborder 
filter(x,min,max) = (x > min && x < max) ? x : 1/0 
plot '+' using (filter($1, -1, -0.5)):(f($1)) with filledcurves x1 lt 1 notitle,\ 
    '' using (filter($1, 0.2, 0.8)):(f($1)) with filledcurves x1 lt 1 notitle,\ 
    '' using 1:(f($1)) with lines lw 3 lt 1 title 'curve' 

ответ

1

Я предполагаю, что проблема возникает из-$ в автоматическом название, которое создается Gnuplot. Используйте title перезаписать это по обычаю один:

plot ... title 'my custom escaped title' 

Или использовать column(1) вместо кратчайшего $1.

+0

Совершенно верно. Большое спасибо!!!! –

Смежные вопросы