Если контрольная последовательность под Gnuplot
Как выполнить контрольные последовательности под Gnuplot, пожалуйста?
Мне нужно сделать что-то вроде
if (x == nan)
set xrange[]
else
set xrange[10:30]
Я пробовал что-то вроде
( x > 100000 ) ? (set xrange[]) : (set xrange[10:30])
... но безуспешно! Я потратил часы, пытаясь решить это!
Любая помощь, пожалуйста?
В худшем случае я могу создать оболочку script для управления этим, но я думаю, что для ее исправления должны быть некоторые контрольные последовательности.
Ответы
Ответ 1
Для gnuplot 4.4.4 оператор if
должен находиться в одной строке:
if (x > 10000) set autoscale x; else set xrange [10:30]
или используйте \
для продолжения на следующей строке.
if (x > 10000) \
set autoscale x; \
else \
set xrange [10:30]
Так как 4.6.0 gnuplot может использовать скобки для разграничения ветвей:
if (x > 10000) {
set autoscale x
} else {
set xrange [10:30]
}