Sparkline

Sparkline

Categoría Evolución

Qué es

Gráfico de líneas miniaturizado sin ejes ni etiquetas, diseñado para incrustarse en tablas o texto. Muestra la tendencia general de una serie sin detalles.

Para qué sirve

Para añadir contexto de tendencia a una tabla de datos sin interrumpir el flujo de lectura. Cada fila puede tener su propia sparkline.

Cómo leerlo

Anatomía

El concepto y el nombre de este formato se popularizaron a comienzos de la década de 2000, definidos como un gráfico pequeño, intenso y del tamaño de una palabra, con resolución tipográfica. La idea central no es solo técnica sino tipográfica: un sparkline debería poder vivir dentro de una oración, una celda de tabla o un titular exactamente como una palabra o un número, sin degradar su resolución a la de una imagen aparte con su propio marco y pie de figura. Por eso no lleva ejes, etiquetas ni gridlines —cualquier elemento de gráfico tradicional que sobre se elimina— y como máximo marca el último valor, el máximo y el mínimo: apenas lo justo para leer la forma de la tendencia sin reconstruir el aparato completo de un gráfico de líneas.

Monitor de signos vitales en primer plano, con tres trazas de colores —verde, amarilla y roja— ondulando de forma continua sin ejes ni números visibles: la misma anatomía de un sparkline, una línea diminuta y sin ejes que comunica una tendencia de un vistazo

Por qué funciona

Fundamento perceptivo

Encapsula una tendencia en el espacio de una palabra. Permite que tablas densas comuniquen dirección sin requerir gráficos separados.

Errores comunes

  • Sin magnitud real visible

    Una sparkline no tiene ejes ni escala numérica visible, así que solo comunica la forma general de la tendencia —sube, baja, es volátil— pero no el valor exacto en ningún punto. Usarla como única fuente de un dato preciso, sin un número de referencia al lado (como el valor actual o el cambio porcentual), deja al lector sin ninguna forma de saber cuánto es "mucho" o "poco".

  • Comparar sparklines con escalas distintas entre sí

    Si cada sparkline de una tabla se autoescala de forma independiente a su propio rango de valores, dos series con formas visualmente parecidas pueden representar magnitudes de cambio completamente distintas. Sin una escala compartida (o al menos una nota explícita de que cada una tiene su propio rango), comparar la "forma" de varias sparklines entre filas puede llevar a conclusiones erróneas.

  • Demasiados puntos de inflexión

    Una serie con ruido de alta frecuencia, mostrada en un espacio del tamaño de una palabra de texto, se convierte en una maraña de picos que no comunica ninguna tendencia legible. Suavizar levemente la serie o mostrar un promedio móvil corto suele preservar la utilidad de la sparkline sin perder la forma general del movimiento.

Dónde se usa

Contextos de aplicación

Ventas
01

Ventas

Tendencia de ventas incrustada junto a cada producto en una tabla, sin necesitar un gráfico aparte.

Precios
02

Precios

Variación de precio junto a cada ítem de un listado, para leer la dirección sin salir de la tabla.

Productividad
03

Productividad

Evolución de un KPI dentro de un reporte o reunión, compacta como una palabra más del texto.

Cómo construirlo

El mismo gráfico, en 11 librerías open source

Cada librería resuelve las mismas decisiones de diseño, como la escala, el espaciado entre barras o la inserción de la etiqueta de valor, de un modo distinto. Algunas las automatizan; otras las dejan explícitas en el código, a criterio de quien lo escribe. Comparar once implementaciones con los mismos datos y el mismo color de marca aísla esa diferencia, que de otro modo queda oculta detrás de estilos visuales distintos.

Matplotlib License (estilo BSD)
Matplotlib: gráfico de barras

No hay una función "sparkline" en matplotlib: es una figura chica de verdad (3.2 × 0.85 pulgadas) con ax.axis("off") apagando ejes, marco y ticks en una sola línea.

import matplotlib.pyplot as plt

meses = ["Ene", "Feb", "Mar", "Abr", "May", "Jun", "Jul", "Ago"]
ipc = [1.1, 0.2, -0.4, 0.9, 0.0, 0.0, 0.3, -0.2]

# No hay una funcion "sparkline" en matplotlib -- es una figura chica
# con ax.axis("off") apagando ejes, marco y ticks de una sola linea.
fig, ax = plt.subplots(figsize=(3.2, 0.85))
ax.plot(meses, ipc, color="#760D3E", linewidth=2)
ax.scatter([meses[-1]], [ipc[-1]], color="#D2601F", s=28, zorder=3)
ax.axis("off")
plt.tight_layout(pad=0.2)
plt.show()

Herramientas para construirlo

No-code, desktop y plataformas web, con su licencia visible, abierta o comercial.

No-code
Excel ComercialPower BI ComercialDatawrapper Freemium
JavaScript
D3.js Open SourceECharts Open SourceHighcharts Comercial
Python
Plotly Open SourceMatplotlib Open Source

Con datos reales

Ejemplos de uso.

Tres indicadores reales de Chile que sí fluctúan

IPC, dólar y desempleo: series oficiales que suben y bajan mes a mes, cada una incrustada en su propia fila, sin ejes.

IPC · INE

Variación mensual del IPC, 2025 (%)

-0,2%

DÓLAR · SII / BANCO CENTRAL

Dólar observado, promedio mensual 2025

$916

DESEMPLEO · INE

Tasa de desocupación trimestral 2025

8,3%

Fuente: Instituto Nacional de Estadísticas (INE) · Servicio de Impuestos Internos (SII) / Banco Central de Chile

Gráficos relacionados

Variantes y alternativas cercanas.