У меня проблема с gnuplot. В моих данных есть очень очевидная линейная зависимость в определенном диапазоне. Поэтому я хочу сделать линейное приближение в этом диапазоне. Но gnuplot выбрасывает что-то вроде ортогональности (как и должно быть). Я создал следующий файл подгонки:
set fit errorvariables
f(x)=a*x+b
fit f(x) 'Data1f.txt' using 1:2:3:4 xyerrors via a,b
g(x)=c*x+d
fit g(x) 'Data2f.txt' using 1:2:3:4 xyerrors via c,d
set xlabel 'U_G [V]'
set ylabel '{/Symbol=\326}(U_{Ph}-U_0) [{/Symbol=\326}U]'
set xrange [0:0.9]
set yrange [0:4.5]
set grid
plot 'Data1.txt' using 1:2:3:4 w xyerrorbars title 'Measurement 1', f(x) title 'f(x)', 'Data2.txt' using 1:2:3:4 w xyerrorbars title 'Masurement 2', g(x) title 'g(x)'
И это приводит к следующему графику:
![enter image description here](https://i.stack.imgur.com/cPl3z.png)
Я незнаю, почему он не соответствует явно линейной части данных («Data1f» и «Data2f» содержат точно такие же значения, как «Data1» и «Data2» только с некоторыми опущенными точками данных (я пробовал это, когда диапазонКоманды 'fit [число: число] f (x) ......' показали тот же результат.) Даже LibreOffice Calc смог дать мне подходящую кривую, которая привела к ожидаемой (но LibreOffice Calc не можетобрабатывать ошибки - только сами точки данных).