Clase Matplotlib.dates.ConciseDateFormatter 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.ConciseDateFormatter

La matplotlib.dates.ConciseDateFormatterclase se utiliza para determinar el mejor formato para la fecha y también la hace lo más compacta posible pero completa. Esto se usa más a menudo con AutoDateLocator.

Sintaxis: class matplotlib.dates.ConciseDateFormatter(locator, tz=Ninguno, formatos=Ninguno, offset_formats=Ninguno, zero_formats=Ninguno, show_offset=True)

Parámetros:

  • localizador: este parámetro representa el localizador que utiliza este eje.
  • tz: Es un parámetro opcional que acepta una string que se pasa a dates.date2num.
  • formatos: Es una lista opcional de 6 strings. Se utiliza para formatear strings para 6 niveles de etiquetado de ticks como años, meses, días, horas, minutos y segundos. Estas strings tienen códigos de formato iguales a los de strftime. Sus valores predeterminados son [ ‘%Y’, ‘%b’, ‘%d’, ‘%H:%M’, ‘%H:%M’, ‘%S.%f’]
  • zero_formats: Es una lista opcional de 6 strings. Se utiliza para dar formato a strings para etiquetas de marca que son «cero» para cualquier nivel de marca dado. Por ejemplo, si la mayoría de los ticks son meses, los ticks alrededor del 1 de febrero de 2020 se etiquetarán como «Jan» 2020 «March». Sus valores predeterminados son [«, ‘%Y’, ‘%b’, ‘%b-%d’, ‘%H:%M’, ‘%H:%M’].
  • offset_formats: es una lista opcional de 6 strings. Se utiliza para dar formato a strings para 6 niveles que se aplica a la string de «desplazamiento» en el lado derecho del eje x o en la parte superior del eje y. Esto debería especificar completamente la fecha cuando se combina con las etiquetas de marca. Los valores predeterminados son [”, ‘%Y’, ‘%Y-%b’, ‘%Y-%b-%d’, ‘%Y-%b-%d’, ‘%Y-%b-% d %H:%M’].
  • show_offset: Acepta un valor booleano y decide si mostrar o no el desplazamiento. De forma predeterminada, se establece en Verdadero.
  • Ejemplo 1:

    import numpy as np
    import matplotlib.dates as mdates
    import matplotlib.pyplot as plt
      
       
    # dummy date
    dummy_date = np.arange("2020-04-10", 
                           "2020-05-14",
                           dtype ="datetime64")
      
    random_x = np.random.rand(len(dummy_date))
       
    figure, axes = plt.subplots()
      
    axes.plot(dummy_date, random_x)
    axes.xaxis.set(
        major_locator = mdates.AutoDateLocator(minticks = 1,
                                               maxticks = 5),
    )
      
    locator = mdates.AutoDateLocator(minticks = 15,
                                     maxticks = 20)
    formatter = mdates.ConciseDateFormatter(locator)
      
    axes.xaxis.set_major_locator(locator)
    axes.xaxis.set_major_formatter(formatter)
       
    plt.show()
    

    Producción:

    Ejemplo 2:

    import datetime
    import matplotlib.pyplot as plt
    import matplotlib.dates as mdates
    import numpy as np
      
      
    dummy_date = datetime.datetime(2020, 2, 1)
      
    # random date generator
    dates = np.array([dummy_date + datetime.timedelta(hours =(2 * i))
                      for i in range(732)])
    date_length = len(dates)
      
    np.random.seed(194567801)
    y_axis = np.cumsum(np.random.randn(date_length))
      
    lims = [(np.datetime64('2020-02'), 
             np.datetime64('2020-04')),
            (np.datetime64('2020-02-03'), 
             np.datetime64('2020-02-15')),
            (np.datetime64('2020-02-03 11:00'), 
             np.datetime64('2020-02-04 13:20'))]
      
    figure, axes = plt.subplots(3, 1, 
                                constrained_layout = True, 
                                figsize =(6, 6))
      
    for nn, ax in enumerate(axes):
          
        locator = mdates.AutoDateLocator(minticks = 3, maxticks = 7)
        formatter = mdates.ConciseDateFormatter(locator)
          
        ax.xaxis.set_major_locator(locator)
        ax.xaxis.set_major_formatter(formatter)
      
        ax.plot(dates, y_axis)
        ax.set_xlim(lims[nn])
          
    axes[0].set_title('Concise Date Formatter')
      
    plt.show()
    

    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 *