Matplotlib.dates.epoch2num() en Python

Matplotlib es una increíble biblioteca de visualización en Python para gráficos 2D de arrays. Matplotlib es una biblioteca de visualización de datos multiplataforma basada en arrays NumPy y diseñada para funcionar con la pila SciPy más amplia.

matplotlib.dates.epoch2num()

La matplotlib.dates.epoch2num()función se utiliza para convertir una época o una secuencia de épocas a un nuevo formato de fecha desde el día 0001.

Sintaxis: matplotlib.dates.epoch2num(e)

Parámetros:

  • e: Puede ser una época o una secuencia de épocas.

Devoluciones: Un nuevo formato de fecha desde el día 0001.

Ejemplo 1:

import random
import matplotlib.pyplot as plt
import matplotlib.dates as mdates
  
# generate some random data
# for approx 5 yrs
random_data = [float(random.randint(1487517521,
                                    14213254713))
               for _ in range(1000)]
  
# convert the epoch format to
# matplotlib date format 
mpl_data = mdates.epoch2num(random_data)
  
# plotting the graph
fig, axes = plt.subplots(1, 1)
axes.hist(mpl_data, bins = 51, color ='green')
locator = mdates.AutoDateLocator()
  
axes.xaxis.set_major_locator(locator)
axes.xaxis.set_major_formatter(mdates.AutoDateFormatter(locator))
  
plt.show()


Producción:

Ejemplo 2:

from tkinter import *
from tkinter import ttk
import time 
import matplotlib
import queue
from matplotlib.backends.backend_tkagg import FigureCanvasTkAgg, NavigationToolbar2Tk
from matplotlib.figure import Figure
import matplotlib.animation as animation
import matplotlib.dates as mdate
  
  
root = Tk()
  
graphXData = queue.Queue()
graphYData = queue.Queue()
  
def animate(objData):
      
    line.set_data(list(graphXData.queue), 
                  list(graphYData.queue))
      
    axes.relim()
    axes.autoscale_view()
  
figure = Figure(figsize =(5, 5), dpi = 100)
axes = figure.add_subplot(111)
axes.xaxis_date()
  
line, = axes.plot([], [])
axes.xaxis.set_major_formatter(mdate.DateFormatter('%H:%M'))
  
canvas = FigureCanvasTkAgg(figure, root)
canvas.get_tk_widget().pack(side = BOTTOM, 
                            fill = BOTH, 
                            expand = True)
  
for cnt in range (600):
      
    graphXData.put(matplotlib.dates.epoch2num(time.time()-(600-cnt)))
    graphYData.put(0)
  
ani = animation.FuncAnimation(figure, animate, interval = 1000)
  
root.mainloop()

Producción:

Publicación traducida automáticamente

Artículo escrito por RajuKumar19 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *