Глава 4. Автоматизация спектроскопического эксперимента

Просмотр и сохранение результатов измерений


Оставшиеся для реализации пункты меню «5. Просмотр результатов измерения и запись в файл» и «6. Просмотр файлов данных» не содержат каких-либо важных нововведений и предполагают, в первую очередь, правильную обработку различного вида исключений. Формат итогового файла для записи результата предполагается текстовым с построчным размещением данных. Разграничитель в строке между числами – символ табуляции (\t). Код функции для записи файла данных выглядит следующим образом:


Дадим некоторые пояснения к представленному коду.

Сначала читаются данные из файла curr_meas.tmp, автоматически сохранённые в процессе измерения (строки 5-9). Значение переменной s (строка 4) определяет логику выполнения фрагментов кода. Если файл прочитан корректно, то данные будут загружены в список data и будут отображены в текстовом виде в терминальном окне (строки 13-14). График по этим же экспериментальным значениям строится в строках 16-22. Поскольку здесь мы не использовали numpy-массивы, для выборки необходимых столбцов из списка data можно использовать for-генераторы (строка 19). Пока окно графика не будет закрыто, программа будет ожидать на строке 22.

Со строки 25 пользователю будет предложено записать показанные данные в файл. Здесь также переменная s используется для управления логикой работы с файлами. Путь к каталогу с экспериментальными данными задаётся в параметре params['datapath']. В программе можно предусмотреть код для изменения значения этого параметра. Модуль os здесь используется для того, чтобы выяснить, нет ли уже на диске файла с заданным вами именем (строка 28). Модуль datetime потребовался для записи даты и времени создания файла как часть комментария к данным (строка 34).

Структура данного текстового файла является авторским решением и отличается некоторой избыточностью сохраняемой информации. Собственно цикл записи набора экспериментальных данных в файл в текстовом формате находится в строках 37-40. Для записи был использован метод write для записи каждого отдельного значения, отделённого табуляцией, строка 40 потребовалась для установки символа перехода на новую строку. Строки с 33 по 36 формируют заголовок файла, содержащий необходимую информацию о сохраняемых данных.

Функция для чтения и отображения файла данных написана сходным образом, и здесь её код не приводится, приведём только результат её работы:


Если вы заметили неточность, ошибку или хотите поделиться своими мыслями по поводу статьи - мы рады обратной связи. Давайте вместе сделаем ресурс лучше!

От кого:
Ваш комментарий будет виден всем пользователям