Я хотел бы знать, возможно ли создать диаграмму ближе к этому из Python:
У меня есть 3 датчика, которые могут быть нулевыми или один с течением времени.Для нуля он будет красным и зеленым, если он равен единице. график истории
Файл cvs выглядит следующим образом:
16: 08: 01; 1
16: 13: 01; 0
17: 05: 01; 1
У меня есть следующий код:
from datetime import datetime
import pylab as pl
import csv
import matplotlib.dates as dates
def Grafico_escalera():
formato = dates.DateFormatter("%H:%M")
#entrada = open('historia_Presion_Cam_1_2019_09_17.csv')
historia_cama = open('historia_Cam_1_2019_09_19.csv' )
tabla_cama = []
for fila in csv.reader(historia_cama,delimiter=';'):
tabla_cama.append(fila)
historia_cama.close()
x_cam=[]
y_cam=[]
for fila in range(1, len(tabla_cama)):
#x.append(tabla[fila][0])
x_cam.append(datetime.strptime(tabla_cama[fila][0], '%H:%M:%S'))
y_cam.append(float(tabla_cama[fila][1].replace(",",".")))
historia_pul = open('historia_Pul_1_2019_09_19.csv' )
tabla_pul = []
for fila in csv.reader(historia_pul,delimiter=';'):
tabla_pul.append(fila)
historia_pul.close()
x_pul=[]
y_pul=[]
for fila in range(1, len(tabla_pul)):
#x.append(tabla[fila][0])
x_pul.append(datetime.strptime(tabla_pul[fila][0], '%H:%M:%S'))
y_pul.append(float(tabla_pul[fila][1].replace(",","."))+1.1)
pl.figure(1, figsize=(9, 6))
pl.step(x_cam,y_cam)
pl.step(x_pul,y_pul, 'r')
pl.gca().xaxis.set_major_formatter(formato)
pl.xlabel('Hora')
pl.ylabel('Estado [Si/No]')
pl.title('Grafica Sensor de cama')
pl.savefig('grafica_sensor_cama_2.png', dpi=300)
pl.show()
И я получаю следующий график: мой график