Skip to content

1N0T/calendarHeatmap

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

logo

Calendar HeatMap.

Se trata de una función a la que le pasaremos una lista con una serie de valores. Se presupone que cada valor representa el de un día determinado y, es requisito que incluya un valor para día consecutivo desde el día inicial.

El primer valor de la lista, se corresponderá con el del primer día del mes, pero no es necesario que sea el dl primer mes del año. Se puede comenzar desde cualquier mes (pero simepre desde el día 1 del mismo). En el caso de que no se pudiera cumplir esta condición, por no disponer de valores desde el principio de mes, se deberían insertar numpy.nan en la lista, para todos aquellos días desde el inicio para los que no se disponga de un valor.

Por otra parte, si no se disponen de valores hasta el final de un mes, no es necesario completarlos (esta circunstancia ya está controlada en la función).

Puedes leer aquí una explicación, paso a paso, del enfoque adoptado.

Dependencias.

La aplicación requiere la instalación de:

  • matplotlib.
  • numpy.

Ejemplos de resultado.

Podemos mostrar calendario representando valores sólo con el mapa de colores. Pero adicionalmente, podemos añadir una etiqueta con el valor númerio representado y/o el día del mes al que se corresponde.

img01

También es posible personalizar la paeta de colores, así como la cantidad de meses mostrados y, el numero de columnas en las que se representan.

img01

Ejemplo de utilización

import numpy as np
import calendar_heatmap as chm

# Generamos lista de valores aleatorios para los días que queremos
# representar en el calendario.
valores = np.random.randint(365, size=500)
year = 2021

# Función para generar imagen del calendario. Sólo los 2 primeros parámetros son obligatorios
# Los formatos de fichero soportados son:
# eps, jpeg, jpg, pdf, pgf, png, ps, raw, rgba, svg, svgz, tif, tiff

chm.calendar_heatmap(
    valores,                       # Lista de valores a representar en el calendario
    year,                          # Año al que corresponde elprimer valor
    meses=15,                      # Numero de meses que se quieren representar en el calendario
    mes_inicial=2,                 # Mes al que corresponde el primer valor (no es obligatorio empezar en enero)
    columnas=4,                    # Numero de meses a incluir en cada fila del calendario
    minimo = 0,                    # Valor inicial que representa el inicio de la escala de colores
    maximo = 400,                  # Valor final que representa el final de la escala de colores
    mostrar_valores=True,          # Además del código de color, se mostrará el valor numérico
    mostrar_dias=True,             # Se mostrará el día del mes en una esquina
    mostrar_escala_colores = True, # Mostramos la escala de colores
    grosor_escala_colores = 0.05,  # Especificamos alto escala decolores
    zoom=1,                        # Número de veces que se quiere ampliar el tamaño de la imgen resultante
    paleta='Purples',              # Paleta de colores a utilizar (cualquier identificador válido de matplotlib)
    fichero='calendario.png'       # Nombre del fichero a crear. La extensión determinará el formato
)

Historial de versiones.

Versión Descripción
v1.0.2 Corrección error cálculo calendario > 11 meses y añadida personalización alto escala de colores.
v1.0.1 Añadida visualización de escala de colores y personalización rango de valores.
v1.0 Versión inicial

About

Calendario para representar valores con mapa de colores

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •  

Languages