GPVAL_Y_MIN не найден в gnuplot 4.6

Команда show variables all перечисляет мои доступные переменные, где GPVAL_Y_MIN или GPVAL_Y_MAX не найдены (GPVAL_VERSION = 4.6, а для терминала установлено значение aqua). Я пытаюсь вычесть минимальное значение из оси Y на лету следующим образом, но безуспешно:

ymin = GPVAL_Y_MIN
plot "file.dat" every 10 u 4:($7-ymin) w p

Спасибо за вашу помощь.


person kuki    schedule 14.11.2013    source источник


Ответы (1)


GPVAL_Y_MIN устанавливается только после того, как вы на самом деле отобразите некоторые данные. Одно старое решение состоит в том, чтобы установить терминал в фиктивный режим, сделать «график», а затем сбросить терминал на что-то полезное, прежде чем снова строить график.

Однако, начиная с gnuplot 4.6, вам доступна команда stats.

stats 'file.dat' e 10 u 4:7
plot 'file.dat' e 10 u 4:($7-STATS_min_y)

Я думаю, будет делать то, что вы просите (не проверено)

person mgilson    schedule 15.11.2013
comment
Спасибо, но ‹stats 'file.dat' e 10 u 4:$7› выдает ошибку Ожидание [нет] вывода или префикса. - person kuki; 19.11.2013
comment
Раньше они почему-то не работали. Но теперь это работает! Спасибо еще раз! - person kuki; 19.11.2013
comment
В команде stats указан неправильный символ $, должен быть stats 'file.dat' e 10 u 4:7. - person Christoph; 21.11.2013
comment
@ Кристоф - Спасибо. На самом деле я нечасто использовал команду stats. Я немного удивлен, что он не принимает стандартный синтаксис $. - person mgilson; 21.11.2013
comment
Он использует тот же синтаксис using, что и plot, но using 4:$7 в любом случае неверен, using 4:($7) работает. - person Christoph; 21.11.2013
comment
@Кристоф -- фейспалм :-/. Ваше здоровье. Вы можете сказать, что я не использовал gnuplot в течение последних 6 месяцев. Мои навыки немного заржавели. - person mgilson; 21.11.2013