Найти - Пользователи
Полная версия: Импорт данных из файла для построения графика
Начало » Python для новичков » Импорт данных из файла для построения графика
1
Lexone
Здравствуйте, проблема в следующем:
У меня есть два текстовых файла temp.txt и date.txt
Данные представлены строками со значениями вида 54.2 и 01:32:17 соответственно.
Я хочу с помощью Python построить простой график, где по оси Х были бы значения времени, а по оси У значения температуры.

Для построения графика набросал код:
 #coding=utf-8
import matplotlib.pyplot as plt
 
if __name__ == '__main__':
   # Значения по X
   data_x = []
   with open("date.txt") as f:
      for line in f:
         data_x.append([datetime.time(x) for x in line.split()])
   # Значения по Y
   data_y = []
   with open("temp.txt") as f:
      for line in f:
         data_y.append([float(y) for y in line.split()])
 
   plt.title("X^2 plot")
   plt.xlabel("X")
   plt.ylabel("Y")
   # представляем точки (х,у) кружочками диаметра 10
   plt.plot(data_x, data_y, 'r')
 
   # Сетка на фоне для улучшения восприятия
   plt.grid(True, linestyle='-', color='0.75')
 
   plt.show()

Так как данные в текстовых файлах ничто иное, как просто набор строк, их нужно привести к нужному типу данных. Если со значением температуры ситуация более менее ясна, то с временем разобраться не получается… К какому типу можно привести данные вида XX:XX:XX?

date.txt
01:49:46
01:49:47
01:49:49
01:49:50
01:49:51
01:49:52
01:49:53
01:49:54
01:51:01
01:51:02

temp.txt
62.3
61.8
61.8
60.7
61.2
60.7
61.2
61.2
60.1
59.1
JOHN_16
Попробуйте Time (Невероятно логично, не правда ли)
Lexone
JOHN_16
Попробуйте Time (Невероятно логично, не правда ли)
Если это невероятно логично, для Вас не составит труда привести пример?
FishHook
 >>> t = datetime.datetime.strptime("01:32:17", "%H:%M:%S").time()
>>> t
datetime.time(1, 32, 17)
>>>
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB