tiempo real que matrices graficos graficas graficar ejes coordenadas python matplotlib datetime-format

real - python graficos 2d



Creación de gráficos con fecha y hora en etiquetas de ejes con matplotlib (1)

Espero que esto ayude. Siempre he tenido problemas con las fechas de matplotlib. Matplotlib requiere un formato flotante que es días desde época. Las funciones auxiliares num2date y date2num junto con python num2date - date2num datetime se pueden usar para convertir a / from. El negocio de formateo se eliminó de this ejemplo. Puede cambiar un eje en cualquier gráfico a un eje de fecha usando set_major_formatter .

import numpy as np from matplotlib import pyplot as plt from matplotlib import dates import datetime a = np.array([ [1293605162197, 0, 0], [1293605477994, 63, 0], [1293605478057, 0, 0], [1293605478072, 2735, 1249], [1293606162213, 0, 0], [1293606162229, 0, 0]]) d = a[:,0] y1 = a[:,1] y2 = a[:,2] # convert epoch to matplotlib float format s = d/1000 ms = d-1000*s # not needed? dts = map(datetime.datetime.fromtimestamp, s) fds = dates.date2num(dts) # converted # matplotlib date format object hfmt = dates.DateFormatter(''%m/%d %H:%M'') fig = plt.figure() ax = fig.add_subplot(111) ax.vlines(fds, y2, y1) ax.xaxis.set_major_locator(dates.MinuteLocator()) ax.xaxis.set_major_formatter(hfmt) ax.set_ylim(bottom = 0) plt.xticks(rotation=''vertical'') plt.subplots_adjust(bottom=.3) plt.show()

Tengo mis datos en una matriz de la siguiente estructura,

[[1293606162197, 0, 0], [1293605477994, 63, 0], [1293605478057, 0, 0], [1293605478072, 2735, 1249], [1293606162213, 0, 0], [1293606162229, 0, 0]]

La primera columna es el tiempo de época (en ms ), el segundo es y1 y el tercero es y2 . Necesito un diagrama con el tiempo en el eje x, y y1 y y2 en los ejes y izquierdos y derechos.

He estado revisando la documentación pero no he podido encontrar ninguna forma de que mis tics del eje x muestren tanto la fecha como la hora, como "28/12 16:48", es decir, "fecha / hora del mes: minuto". Toda la documentación que me ayuda es mostrar fechas solo, pero eso no es lo que quiero. Cualquier ayuda sería apreciada en esto.

Y, si puede parecer, esto no es tarea. En realidad, es un seguimiento de mi pregunta anterior, Leer y graficar datos leídos de archivos enormes .