Tableau

Cómo crear un Network Chart con Tableau Desktop

Los Network Chart son un método de representación que permiten visualizar fácilmente las relaciones entre los datos. Utilizan nodos conectados entre sí por características comunes, como los elementos gráficos, lo que permite la identificación inmediata de diferentes relaciones y agrupaciones.

Para crear visualizaciones de network en Tableau, existen dos alternativas: la primera es mediante extensiones de pago, mientras que la segunda utiliza una solución completamente gratuita que, sin embargo, requiere pasos manuales para preparar los datos para su visualización en Tableau. En este último caso, recomendamos este tipo de visualización sólo para fuentes de datos que no necesiten ser actualizadas con frecuencia.

En nuestro ejemplo utilizaremos Tableau, Excel y Gephi, pero el razonamiento puede extenderse a cualquier programa de su preferencia.

Preparación del dataset

Para crear un gráfico de este tipo, es necesario disponer de un conjunto de datos adecuado capaz de mostrar una red de relaciones. En nuestro ejemplo, utilizaremos Las Muertes de Juego de Tronos, ya que se presenta como un buen punto de partida: contiene información como el nombre y el linaje del asesino, el nombre de la víctima, el episodio y el lugar de la muerte. Además, ¿a quién no le gusta Juego de Tronos?


Tableau necesita conocer las coordenadas espaciales de los nodos y cómo conectarlos. En nuestro ejemplo, cada nodo representa un asesino o una víctima.

Para generar estas coordenadas, necesitamos proporcionar a Gephi dos archivos .csv (más información aquí):

  • Nodes.csv – proporciona todos los posibles nodos de una red. Este archivo debe contener al menos las siguientes columnas: «ID» y «Label». El ‘ID’ es un número que identifica a nuestros asesinos/víctimas, mientras que ‘Label’ representa la etiqueta de cada nodo;
  • Edges.csv – proporciona información sobre la conexión entre nodos. Este archivo debe contener al menos las siguientes columnas: «Source», «Target» y «Type». En nuestro caso, ‘Source’ es el asesino, ‘Target’ es la víctima y ‘Type’ representa el tipo de conexión (en caso de que haya una relación entre source/target, ‘Type’ debe ser establecido como ‘Directed’).

Ahora que sabemos la información que debemos proporcionar a Gephi para generar nuestro network chart, es el momento de empezar a preparar los datos.

Podemos ver que el campo ‘Name’ (nuestros target) está lleno de valores duplicados debido a nombres comunes como ‘Tribesman’ y ‘Lannister soldier’. Antes de continuar, lo primero que tenemos que hacer es decidir si tratamos estos valores como distintos, creando una convención de nomenclatura ad hoc para cada uno de ellos (de esta manera mostraremos cada una de las muertes ocurridas durante la serie), o los eliminamos (mostrando un único nodo para representar, por ejemplo, el valor «Tribesman»). En este ejemplo, hemos decidido adoptar el primer enfoque.

Creación de nodos

Vamos a crear un nuevo archivo de Excel y crear nuestros dos campos ‘ID’ y ‘Label’. A continuación, copiamos los valores de la columna «Killer» en el campo «Label» y eliminamos los duplicados. Procedemos de la misma manera para la columna «Name» y valoramos el campo «ID» con una secuencia numérica creciente. De este modo, cada asesino/víctima tendrá un ID diferente. Por último, guardamos el archivo como Nodos.csv (¡formato .csv!).


Creación de los edges

En este punto tendremos una lista única de ID. Utilizando las funciones INDEX/CONFRONTACT será posible insertar estos valores dentro de nuestro dataset, tanto para el asesino como para la víctima, dentro de dos nuevos campos que llamaremos ‘Source’ y ‘Target’.

Ahora que hemos mapeado nuestros elementos con los ID creados en el paso anterior, pasamos a crear los campos ‘Source’, ‘Target’ y ‘Type’ en un nuevo archivo excel. Copiamos y pegamos en este archivo los campos que acabamos de añadir a la fuente. Por último, guardamos el archivo como Edges.csv (el formato .csv es obligatorio).

Como se anticipó, dado que hay una relación asesino/víctima, el campo «Type» debe establecerse en una cadena fija «Directed». Además, si quieres dar más peso a una relación concreta, puedes crear una columna numérica adicional llamada «Weight».

Creación de coordenadas

Abre Gephi, haz clic en File -> Open y selecciona el archivo Nodes.csv. Gephi reconoce automáticamente que se trata de una tabla de nodos. Haz clic en «next», «Finish» y selecciona «Directed» en el menú «graph type».

Procedemos de la misma manera para el archivo Edges.csv, pero después de seleccionar «Directed» hacemos clic en «Append to existing workspace». El resultado final será el siguiente:


Ha llegado el momento de formatear el diseño de nuestra red. Para ello, utilizamos el menú «Layout» de la barra lateral izquierda. Diviértete probando los distintos algoritmos, también puedes mover manualmente cada punto de la red. En nuestro caso, el resultado final fue el siguiente:

Ya casi estamos listos para cargar los datos en Tableau. Sin embargo, primero vamos a guardar las coordenadas «x» e «y» de la red. Vamos a File -> Export -> Graph File y guardamos como extensión .gexf (esencialmente un formato XML).

Necesitamos transferir estos datos dentro de nuestra fuente. A continuación, abrimos el archivo que acabamos de crear a través de Excel (pueden aparecer mensajes de advertencia, no te preocupes por ello y haz clic en «OK»). Abre ‘Como tabla XML’ y utiliza de nuevo las funciones INDEX/CONFRONTACT para introducir las coordenadas ‘x’ e ‘y’ de los asesinos en la fuente de datos.

Ahora creamos una copia de los datos (por ejemplo, dentro de otra hoja de cálculo) y repetimos los mismos pasos para recuperar las coordenadas de las víctimas. Añadimos estas dos tablas para obtener una única que contenga las coordenadas de los asesinos y las víctimas.

Por fin estamos listos para cargar los datos en Tableau.

Arrastramos los campos ‘X’ e ‘Y’ en filas y columnas y los convertimos en dimensiones. Duplicamos el campo ‘Y’ y creamos un eje doble (recuerda siempre sincronizar los ejes). Lo que obtenemos es un gráfico similar (la visualización puede diferir si has seleccionado un algoritmo diferente en Gephi):


Ahora es necesario especificar a Tableau cómo vincular los campos » Source » y » Target «. Haz clic en la marca ‘Y’ para cambiar el tipo de indicador a ‘Line’. A continuación, arrastramos los campos «Source» y «Target» a «Detail» tras convertirlos en dimensiones.

Este es el resultado final.

Juega con el formato y el diseño para mejorar la visualización… ¡pero sobre todo diviértete!

Aquí puedes encontrar un bonito dashboard construido con el mismo dataset. Ten en cuenta que las coordenadas ‘X’ e ‘Y’ son estáticas, por lo que una operación de filtrado (por ejemplo, por estación) no reposicionará los puntos en la red. Es mejor utilizar una acción de resaltado.

Si te has perdido nuestros artículos anteriores, puedes ponerte al día en nuestro blog y seguirnos en nuestro canal social LinkedIn.

Suscríbete al boletín

Para estar informado sobre las novedades de Tableau y Alteryx, sobre nuestros productos y servicios y sobre los próximos eventos de Visualitics, suscríbete a nuestro boletín. ¡Puedes elegir el tipo de envío que prefieres y darte de baja en cualquier momento!
¿Qué novedades quieres recibir?
¿Qué empresa trata tus datos?

VISUALITICS PARTNERS, S.L. (en adelante, “VISUALITICS“)

¿Por qué tratamos los datos que te pedimos?

Únicamente tratamos tus datos para poder prestarte los servicios de VISUALITICS + info

¿Cuál es la legitimación para este tratamiento de tus datos?

Estos datos son necesarios para llevar a cabo la prestación de los servicios ofrecidos por VISUALITICS + info

¿Se van a hacer cesiones o transferencias con tus datos?

Si así lo consientes, tus datos podrán ser cedidos a terceras empresas. + info

¿Cuáles son mis derechos?

El interesado tiene derecho a ejercitar su derecho de:

– Acceso, rectificación, supresión, oposición, portabilidad de los Datos, limitación del tratamiento y a no ser objeto de decisiones automatizadas individualizadas + info

¿Tienes dudas?

Tanto si tienes alguna o sugerencia como si quieres darte de baja ponte en contacto con nosotros enviando un email a la siguiente dirección: info@visualitics.es