Puntos Clave:
- Crear diagramas de Sankey en Excel tradicionalmente requiere complementos de terceros y conocimientos técnicos, lo que crea barreras para los profesionales de negocios.
- Excelmatic simplifica el proceso generando diagramas de Sankey al instante a partir de instrucciones en lenguaje sencillo, sin necesidad de programación ni configuración compleja.
- En comparación con los métodos manuales en Excel, Python o R, Excelmatic produce visualizaciones Sankey profesionales en segundos, permitiéndote centrarte en los insights en lugar de en la implementación técnica.
- Para profesionales de marketing, ventas y operaciones que necesitan visualizar flujos de datos rápidamente, adoptar herramientas de IA como Excelmatic significa análisis más rápidos y una mejor toma de decisiones.
La belleza de los diagramas de Sankey radica en su capacidad para simplificar sistemas de múltiples etapas. En lugar de buscar entre filas de datos para encontrar las mayores pérdidas de energía o asignaciones presupuestarias, puedes identificarlas al instante buscando los flujos más gruesos. Esto los hace útiles para la gestión energética, el análisis financiero, la optimización de embudos de marketing y cualquier escenario donde comprender el flujo y la transformación de recursos importe más que las comparaciones numéricas precisas.
¿Qué es un Diagrama de Sankey?
Un diagrama de Sankey es una visualización de flujo especializada donde el ancho de las flechas conectadas representa la magnitud del flujo entre diferentes etapas, categorías o entidades. A diferencia de los diagramas de flujo tradicionales que muestran pasos de un proceso o los gráficos de barras que comparan valores discretos, los diagramas de Sankey sobresalen en mostrar cómo las cantidades se mueven, transforman o distribuyen a través de un sistema.

El diagrama anterior ilustra cómo un presupuesto anual de $100,000 fluye a través de diferentes categorías. Observa cómo la asignación a Marketing ($40,000) aparece como un flujo visiblemente más grueso en comparación con I+D ($25,000), haciendo que las diferencias proporcionales sean inmediatamente evidentes.
Historia y evolución de los diagramas de Sankey
El primer diagrama de Sankey conocido apareció en 1898 cuando el Capitán Matthew Henry Phineas Riall Sankey lo usó para mostrar la eficiencia energética de una máquina de vapor. Su diagrama reveló que solo una pequeña porción de la energía del combustible contribuía realmente al trabajo útil, perdiéndose la mayor parte como calor residual.

Sin embargo, el concepto de visualización de flujo proporcional es anterior al Capitán Sankey. Charles Joseph Minard creó en 1869 lo que muchos consideran el diagrama de flujo más famoso, que representa la desastrosa campaña rusa de Napoleón en 1812. El diagrama de Minard mostraba el tamaño decreciente del ejército a medida que avanzaba hacia Rusia y luego se retiraba, siendo el grosor de la línea representativo del número de soldados supervivientes.

Componentes de un diagrama de Sankey
Comprender los elementos clave de un diagrama de Sankey te ayuda tanto a interpretar los existentes como a crear los tuyos de manera efectiva.
- Nodos representan las categorías, etapas o entidades en tu sistema. En nuestro ejemplo del presupuesto, "Presupuesto Anual", "Marketing" y "Anuncios Digitales" son todos nodos. Los nodos fuente (como "Presupuesto Anual") suelen aparecer a la izquierda, mientras que los nodos destino (como "Anuncios Digitales") aparecen a la derecha.
- Flujos o enlaces son los conectores direccionales entre nodos, y su ancho es proporcional al valor que representan. El grueso flujo naranja desde Presupuesto Anual a Marketing representa $40,000, mientras que el flujo mucho más delgado hacia Contenido representa solo $5,000. Este ancho proporcional es la característica definitoria que hace que los diagramas de Sankey sean tan efectivos.
- Valores son los datos numéricos que determinan el ancho de cada flujo. Estos pueden representar dinero, energía, personas o cualquier recurso cuantificable que se mueva a través de tu sistema.
- Pérdidas (Drop-offs) son flujos especiales que representan pérdidas, desperdicio o recursos que salen del sistema sin llegar a un nodo destino. Aunque nuestro ejemplo del presupuesto no muestra pérdidas, podrías verlas en diagramas de energía que muestran pérdidas de calor o en embudos de marketing que muestran clientes que abandonan el proceso.
Cómo Crear un Diagrama de Sankey
Crear diagramas de Sankey requiere diferentes enfoques dependiendo de tus herramientas preferidas y tu nivel de comodidad técnica. Recorreremos el mismo ejemplo de asignación presupuestaria usando Excel, Python y R, para que puedas elegir el método que mejor se adapte a tu flujo de trabajo y experiencia.
Diagrama de Sankey en Excel: IA vs. Complementos Tradicionales
Excel no incluye un tipo de gráfico Sankey nativo, lo que obliga a los usuarios a encontrar soluciones alternativas. Comparemos el método tradicional con complementos y un enfoque moderno impulsado por IA.
El Método Impulsado por IA (con Excelmatic)
La forma más rápida e intuitiva de crear un diagrama de Sankey en Excel es usando un agente de IA como Excelmatic. En lugar de navegar por menús e instalar software de terceros, simplemente puedes expresar tu solicitud en lenguaje sencillo.
El proceso es refrescantemente simple:
- Sube tu archivo de datos que contenga el origen, el destino y el valor para cada flujo.
- Expresa tu necesidad: Escribe un prompt simple como, "Crea un diagrama de Sankey a partir de estos datos para mostrar la asignación del presupuesto."
- Obtén tu gráfico: Excelmatic analiza tus datos y genera al instante un diagrama de Sankey profesional y preciso.

Este enfoque elimina la curva de aprendizaje asociada con los complementos y automatiza todo el proceso. Es ideal para profesionales de negocios que necesitan generar visualizaciones complejas rápidamente sin enredarse en pasos técnicos o escribir código. La IA se encarga de la creación del gráfico, para que tú puedas centrarte en los insights.
El Método Tradicional (con Complementos)
Para aquellos que prefieren un enfoque manual, necesitarás usar un complemento de terceros. ChartExpo es una de las opciones más populares.

Antes de crear el diagrama, necesitarás estructurar tus datos en un formato origen-destino-valor. Cada fila debe representar una conexión de flujo.
El proceso es sencillo una vez que tienes ChartExpo instalado. Primero, instala el complemento desde Microsoft AppSource. Luego, selecciona tu rango de datos (incluyendo los encabezados) y elige Gráfico Sankey de las opciones de visualización de ChartExpo. El complemento detecta tus columnas de origen, destino y valor y proporciona una vista previa, permitiéndote crear y personalizar el gráfico.
Comparación: Si bien los complementos cumplen su función, requieren instalación, selección manual de datos y navegar por una interfaz separada. Una herramienta de IA como Excelmatic simplifica esto en un solo paso conversacional, haciéndolo significativamente más rápido y fácil de usar.
Diagrama de Sankey en Python
Para aquellos que prefieren programar, la biblioteca Plotly de Python es una excelente opción para crear diagramas de Sankey interactivos y de alta calidad. Usaremos los mismos datos de asignación presupuestaria para recrear la visualización.
Paso 1: Preparación de Datos
Comienza organizando tus datos en el formato que Plotly espera: una lista de nombres de nodos, y matrices que especifiquen los índices de origen, los índices de destino y los valores para cada flujo.
import plotly.graph_objects as go
# Define todos los nodos en tu diagrama
nodes = ["Annual Budget", "Marketing", "Operations", "R&D",
"Digital Ads", "Events", "Content", "Salaries",
"Office", "Utilities", "Software", "Equipment"]
# Define las conexiones (usando índices de nodos)
source_indices = [0, 0, 0, 1, 1, 1, 2, 2, 2, 3, 3]
target_indices = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]
values = [40, 35, 25, 25, 10, 5, 20, 10, 5, 15, 10]
Los índices corresponden a posiciones en tu lista nodes, por lo que source_indices = [0, 0, 0] significa que los primeros tres flujos comienzan desde "Annual Budget" (posición 0).
Paso 2: Creación Básica del Sankey
Crea la estructura central del diagrama usando el objeto Sankey de Plotly.
fig = go.Figure(data=[go.Sankey(
node=dict(
label=nodes,
pad=15,
thickness=20
),
link=dict(
source=source_indices,
target=target_indices,
value=values
)
)])
Esto crea un diagrama de Sankey funcional con estilo predeterminado. El pad controla el espaciado entre nodos, mientras que thickness determina qué tan anchos aparecen los rectángulos de los nodos.
Paso 3: Estilización y Personalización
Mejora tu diagrama con colores, un diseño mejorado y formato profesional.
# Agrega colores y transparencia
fig.update_traces(
node_color=["#1f77b4", "#ff7f0e", "#2ca02c", "#d62728",
"#ff9999", "#ff9999", "#ff9999", "#90ee90",
"#90ee90", "#90ee90", "#ffcccb", "#ffcccb"],
link_color=["rgba(255, 127, 14, 0.4)", "rgba(44, 160, 44, 0.4)",
"rgba(214, 39, 40, 0.4)", "rgba(255, 127, 14, 0.6)",
"rgba(255, 127, 14, 0.6)", "rgba(255, 127, 14, 0.6)",
"rgba(44, 160, 44, 0.6)", "rgba(44, 160, 44, 0.6)",
"rgba(44, 160, 44, 0.6)", "rgba(214, 39, 40, 0.6)",
"rgba(214, 39, 40, 0.6)"]
)
# Actualiza el diseño para una mejor presentación
fig.update_layout(
title="Annual Budget Allocation",
font=dict(size=16, family="Arial Black", color="black"),
width=900,
height=600
)
Paso 4: Visualización y Exportación
Muestra tu diagrama y guárdalo en varios formatos.
fig.show() # Muestra en Jupyter notebook o navegador
# Opciones de exportación
fig.write_html("budget_sankey.html") # Versión web interactiva
fig.write_image("budget_sankey.png") # Imagen estática
Diagrama de Sankey en R
El paquete networkD3 de R es otra herramienta poderosa para crear diagramas de Sankey interactivos y listos para la web. Este enfoque ofrece interactividad incorporada como efectos al pasar el cursor y fácil integración con R Markdown.
Paso 1: Configuración y Preparación de Datos
Primero, instala y carga los paquetes necesarios, luego estructura tus datos en dataframes nodes y links.
# Instala los paquetes requeridos (ejecutar una vez)
install.packages(c("networkD3", "dplyr"))
# Carga las bibliotecas
library(networkD3)
library(dplyr)
# Crea el dataframe de nodos
nodes <- data.frame(
name = c("Annual Budget", "Marketing", "Operations", "R&D",
"Digital Ads", "Events", "Content", "Salaries",
"Office", "Utilities", "Software", "Equipment")
)
# Crea el dataframe de enlaces (nota: networkD3 usa indexación basada en 0)
links <- data.frame(
source = c(0, 0, 0, 1, 1, 1, 2, 2, 2, 3, 3),
target = c(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11),
value = c(40, 35, 25, 25, 10, 5, 20, 10, 5, 15, 10)
)
Paso 2: Creación Básica del Sankey
Crea tu diagrama usando la función sankeyNetwork().
# Crea un diagrama de Sankey básico
sankey_plot <- sankeyNetwork(
Links = links,
Nodes = nodes,
Source = "source",
Target = "target",
Value = "value",
NodeID = "name",
units = "K USD"
)
# Muestra el gráfico
sankey_plot
Esto genera un diagrama interactivo donde los usuarios pueden pasar el cursor sobre los flujos y arrastrar nodos para reorganizar el diseño.
Paso 3: Personalización y Estilización
Mejora tu diagrama con colores, tamaño y otras opciones de formato.
# Sankey avanzado con personalización
(sankey_advanced <- sankeyNetwork(
Links = links,
Nodes = nodes,
Source = "source",
Target = "target",
Value = "value",
NodeID = "name",
units = "K USD",
fontSize = 14,
fontFamily = "Arial",
nodeWidth = 30,
nodePadding = 20,
margin = list(top = 50, right = 50, bottom = 50, left = 50),
height = 600,
width = 900
))
Paso 4: Opciones de Exportación e Integración
Guarda tu diagrama interactivo como un archivo HTML autocontenido.
# Guarda como archivo HTML
library(htmlwidgets)
saveWidget(sankey_advanced, "budget_sankey.html", selfcontained = TRUE)
# Para exportar imagen estática (opcional - requiere el paquete webshot2)
install.packages("webshot2")
library(webshot2)
webshot("budget_sankey.html", "budget_sankey.png", vwidth = 900, vheight = 600)

Este diagrama resultante proporciona los mismos insights visuales que nuestras versiones de Python y Excel, pero con una interactividad incorporada que ayuda a los usuarios a explorar los datos más a fondo.
Alternativas y Comparaciones del Diagrama de Sankey
Los diagramas de Sankey funcionan mejor cuando tienes relaciones direccionales claras entre categorías. Sin embargo, varias situaciones requieren diferentes enfoques de visualización.
Cuándo no usar diagramas de Sankey
- Sin flujo direccional: Si tus datos simplemente muestran diferentes grupos sin movimiento entre ellos, un gráfico de barras es más apropiado.
- Necesidad de comparaciones precisas: Los anchos variables dificultan extraer valores exactos. Si la precisión es clave, usa tablas o gráficos de barras.
- Alta complejidad: Con demasiados nodos o flujos interconectados, los diagramas de Sankey pueden convertirse en un desorden confuso.
- Audiencia no familiarizada: Dado que son menos comunes, algunas audiencias pueden encontrarlos confusos. Usa tipos de gráficos familiares a menos que el flujo sea esencial para tu mensaje.
Mejores alternativas para escenarios específicos
- Diagramas aluviales (Alluvial) funcionan mejor para flujos categóricos o basados en el tiempo, como rastrear cómo los votantes se mueven entre partidos a través de múltiples elecciones.
- Gráficos de coordenadas paralelas sirven mejor para comparar datos multivariados, como comparar automóviles en precio, eficiencia de combustible y calific