Я получаю доступ к данным из разных файлов, используя файл .plt, который я написал. Существенным является только конкретный домен каждого набора данных. Я пытаюсь построить только конкретный домен каждого набора данных на один граф.Gnuplot, ограничивающий область нескольких файлов данных, нанесенных на один график
Данные в каждом домене соответствуют пику. Я хочу построить каждый из этих пиков, а затем установить экспоненциальную функцию распада на вершины.
Вот код в моем файле участка:
set xlabel "Time (ms)"
set ylabel "voltage"
set title "T1 time for Isopropyl Alcohol"
dir='C:\Users\Daniel\Desktop\College\modern lab\gp501-win64-mingw\gnuplot\bin\data files\isoproply_alc_t1\'
unset key
set style data linespoints
x(v, left, right) = (v >= left && v <= right ? v : 1/0)
plot dir.'nmr-t1-isopropyl-dt10' using (x($0*0.01, 3, 7)):1, \
dir.'nmr-t1-isopropyl-dt50' using (x($0*0.01, 20, 40)):1, \
dir.'nmr-t1-isopropyl-dt100' using (x($0*0.01, 40, 60)):1, \
dir.'nmr-t1-isopropyl-dt150' using (x($0*0.01, 70, 80)):1, \
dir.'nmr-t1-isopropyl-dt200' using (x($0*0.01, 99, 101)):1, \
dir.'nmr-t1-isopropyl-dt230' using (x($0*0.01, 114, 116)):1, \
dir.'nmr-t1-isopropyl-dt250' using (x($0*0.01, 124, 126)):1, \
dir.'nmr-t1-isopropyl-dt270' using (x($0*0.01, 134, 136)):1, \
dir.'nmr-t1-isopropyl-dt290' using (x($0*0.01, 144, 146)):1, \
dir.'nmr-t1-isopropyl-dt300' using (x($0*0.01, 149, 151)):1, \
dir.'nmr-t1-isopropyl-dt320' using (x($0*0.01, 159, 161)):1, \
dir.'nmr-t1-isopropyl-dt340' using (x($0*0.01, 169, 171)):1, \
dir.'nmr-t1-isopropyl-dt360' using (x($0*0.01, 178, 183)):1, \
dir.'nmr-t1-isopropyl-dt400' using (x($0*0.01, 198, 201)):1, \
dir.'nmr-t1-isopropyl-dt430' using (x($0*0.01, 213, 217)):1, \
dir.'nmr-t1-isopropyl-dt470' using (x($0*0.01, 233, 236)):1, \
dir.'nmr-t1-isopropyl-dt580' using (x($0*0.01, 289, 291)):1, \
dir.'nmr-t1-isopropyl-dt620' using (x($0*0.01, 309, 311)):1, \
dir.'nmr-t1-isopropyl-dt650' using (x($0*0.01, 324, 326)):1, \
dir.'nmr-t1-isopropyl-dt700' using (x($0*0.01, 348, 352)):1, \
dir.'nmr-t1-isopropyl-dt750' using (x($0*0.01, 374, 376)):1, \
dir.'nmr-t1-isopropyl-dt800' using (x($0*0.01, 399, 401)):1, \
dir.'nmr-t1-isopropyl-dt850' using (x($0*0.01, 424, 426)):1, \
dir.'nmr-t1-isopropyl-dt900.2' using (x($0*0.01, 449.5, 451)):1
Это дает правильный домен.
Теперь я хочу перевернуть точки данных за некоторое произвольное значение x по оси y. Я хочу сделать их отрицательными.
Я пробовал команду flipy
, но это не помогло.
Это сработало очень хорошо! У меня есть четкий сюжет со всеми моими вершинами. С чего начать, чтобы я мог соответствовать экспоненциальной функции распада, чтобы соответствовать этим пикам? (Он должен выглядеть как конверт, охватывающий все точки данных. –
Вы должны поместить все точки кривой вашего затухания в один файл (или встроенный набор данных), чтобы использовать «fit». Однострочный: 'set table $ T1data; replot ; unset table; fit I-2 * I * exp (-x/T1) $ T1data us 1: 2 noerr через I, T1' (я предполагал восстановление инверсии ;-)) Возможно, вы захотите настроить левый и правый пределы каждый echo, поэтому 'x()' возвращает только одно значение. – Karl
это было восстановление инверсии! Благодарю. У меня все еще есть проблемы с работой с gnuplot. Я могу вернуться к математике! –