Dumbbell Chart

Dumbbell Chart

Categoría Comparación
Ejemplo de Dumbbell Chart

Qué es

Dos puntos conectados por una línea para cada categoría, representando dos valores sobre un mismo eje cuantitativo (típicamente dos momentos en el tiempo o dos grupos). También llamado Connected Dot Plot. Muestra el cambio o la brecha entre ambos — la distancia solo comunica algo si la escala del eje es visible.

Para qué sirve

Para comparar dos medidas del mismo ítem y enfatizar la magnitud y dirección del cambio. Ideal para mostrar evolución antes/después.

Cómo leerlo

Anatomía

También llamado "barbell chart" o "gap chart", este gráfico reduce cada categoría a dos puntos sobre un mismo eje cuantitativo, unidos por una línea. Esa condición —el mismo eje, la misma unidad— no es opcional: dos escalas distintas convierten la distancia entre los puntos en un truco visual y no en un dato, el error más citado por las guías de referencia sobre este formato. El color no codifica quién va ganando: identifica la serie. Un punto inicial en un tono neutro y un punto final en un tono marcado se mantienen así en todas las filas, incluso en las que la categoría se mueve en la dirección contraria a las demás — ahí es donde se nota si el color se usó bien: la fila sigue siendo reconocible sin necesidad de leer el eje. La línea conectora es el elemento con el peso analítico real: su largo es la magnitud del cambio y su dirección (hacia dónde apunta el punto final) es si la categoría subió o bajó, la pregunta que este gráfico existe para responder. Por último, el orden de las filas no es alfabético ni arbitrario: van de mayor a menor brecha, para que las categorías con la disparidad más grande queden arriba, visibles de inmediato.

Dos mancuernas de gimnasio en blanco y negro, cada una con dos discos octogonales unidos por una barra: la misma forma exacta de un dumbbell chart — dos puntos conectados por una línea, de donde el gráfico toma su nombre

Por qué funciona

Fundamento perceptivo

La distancia entre los dos puntos comunica la magnitud del cambio o diferencia de forma inmediata. La dirección (izquierda/derecha) indica quién lidera.

Errores comunes

  • Más de dos puntos por categoría

    Un dumbbell chart está construido para mostrar exactamente dos valores por fila —típicamente un antes y un después, o dos grupos que se comparan— conectados por una línea. Intentar agregar un tercer punto en la misma fila rompe la lectura de "distancia entre dos extremos" que le da su nombre y su utilidad.

  • Sin ordenar por la magnitud del cambio

    Cuando las filas se dejan en el orden en que llegaron los datos (alfabético o de carga), el lector no puede ver de inmediato qué categoría tuvo el mayor cambio entre los dos puntos. Ordenar las filas por el tamaño de la diferencia —de mayor a menor brecha— convierte al gráfico en un ranking de cuánto cambió cada categoría, que suele ser la pregunta real detrás del dato.

  • Colores que no distinguen los dos momentos

    Si los dos puntos de cada fila usan colores muy parecidos entre sí, el lector no puede identificar sin ayuda de una leyenda cuál punto representa el valor inicial y cuál el final. Un color consistente y contrastante para cada uno de los dos momentos —reforzado en la leyenda— es lo que hace que la línea entre ambos se lea como una flecha de cambio, no como un simple trazo decorativo.

Dónde se usa

Contextos de aplicación

Brecha salarial y comparación entre grupos
01

Brecha salarial y comparación entre grupos

Comparar dos valores del mismo tipo entre dos grupos, como hombres y mujeres, dos países o dos segmentos, sobre un mismo eje, para que la distancia entre ambos sea la protagonista.

Objetivo vs. resultado
02

Objetivo vs. resultado

Seguir cuánto falta entre una meta planificada y el avance real, como una meta de ahorro, una cuota de ventas o un KPI, con el punto inicial y el punto final sobre la misma escala.

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

vlines() dibuja el palito y scatter() cada extremo por separado, en dos llamadas —el mismo patrón de dos capas independientes que ya apareció en el lollipop, con dos puntos en vez de uno.

import matplotlib.pyplot as plt

# BCN: sueldo minimo chileno nominal vs real ajustado por IPC
anios = ["1999", "2005", "2010", "2015", "2020", "2025"]
nominal = [90500, 127500, 172000, 241000, 320500, 510636]
real = [232946, 277004, 312781, 371760, 434522, 516206]

fig, ax = plt.subplots(figsize=(8, 5))
ax.vlines(anios, nominal, real, color="#6B635E", linewidth=1.5)
ax.scatter(anios, nominal, color="#9C9187", s=70, label="Nominal")
ax.scatter(anios, real, color="#760D3E", s=70, label="Real (abr. 2025)")
ax.legend(frameon=False)
plt.tight_layout()
plt.show()

Herramientas para construirlo

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

No-code
Observable FreemiumFlourish FreemiumDatawrapper Freemium
JavaScript
D3.js Open Source
Python
Matplotlib Open SourceAltair Open Source
R
ggplot2 Open Source

Con datos reales

Ejemplos de uso.

El sueldo mínimo de 1999 vale más de lo que parece

Ingreso mínimo mensual de Chile: pesos nominales del año del reajuste vs. pesos equivalentes de abril de 2025 (ajustado por IPC).

Nominal
Real (abr. 2025)
1999$90.500$232.9462005$127.500$277.0042010$172.000$312.7812015$241.000$371.7602020$320.500$434.5222025$510.636$516.206

Fuente: Biblioteca del Congreso Nacional de Chile (BCN), Asesoría Técnica Parlamentaria, mayo 2025