2014-09-11 1 views
1

Я знаю, что «set view equal xy» автоматически устанавливает одинаковые масштабы для x и y, но это не совсем то, что я хочу. Я ожидаю, что я определяю «xrange [a: b]» и «yrange [c :?]» и последнее число «?» будет определяться автоматически из знания «set view equal xy» и из знания длин осей.Как сделать такой же масштаб x и y в gnuplot без полного автосканирования?

Я могу попытаться объяснить другими словами. Я пишу следующее:

reset 
set xrange [-5:5] 
set yrange [-1:?] 
set view equal xy 
plot sin(x) with lines 

Результирующее масштабирование зависит от построенной функции, а gnuplot не соответствует введенным значениям. Но должно быть возможно рассчитать '?' только от знания видимых длин осей (Lx, Ly) и состояния «равных масштабов» (Sx = Sy):

Sx = Sy 
Lx/(-5-5) = Ly/(-1-?) 
? = - Ly/Lx * (-5-5) -1 

Это то, что я ожидаю от Gnuplot когда прошу равные весы. Может ли кто-нибудь помочь мне достичь этого «не полностью автоматического» масштабирования? Спасибо заранее.

ответ

1

Я не совсем уверен, что вы хотите, но с использованием set yrange [-1:*] должно работать нормально. Это autoscales только верхний у-значение:

set xrange [-5:5] 
set yrange [-1:*] 
set size ratio -1 
plot 2*x, 0.2*x 

Выходной сигнал с 4.6.5 является:

enter image description here

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