Visualizaciones interactivas diversas en R

He aquí una nueva entrega de visualizaciones interactivas en R que hará que vuestros resultados hablen por sí solos y reluzcan mucho más. En las dos anteriores entregas mostrábamos gráficos y tablas que, aunque sí se les había añadido una componente interactiva, no dejaban de ser las clásicas visualizaciones que todo el mundo usa.

Clic en la imagen para acceder al Kernel de Kaggle

En esta ocasión mostramos gráficos mucho más rompedores, mucho menos estándar, pero también más específicos que sólo se podrán usar en ocasiones muy determinadas.Hay que decir que la naturaleza de los gráficos mostrados es bastante dispar por eso el matiz de Miscellaneous en el título del Kernel.

Básicamente hay 4 gráficos: una series temporal, un diagrama Sandkey, un gráfico animado y un mapa coroplético. Los 3 primeros los he sacado directamente de la página oficial de Plotly https://plot.ly/, aunque en el primero he tenido que traducir el código de Python a R y en el tercero modificarlo ligeramente. El último gráfico usa una librería diferente llamada Leaflet https://leafletjs.com/ adaptada a la representación de datos geográficos sobre mapas.

A continuación vamos a comentar individualmente cada uno de los 4 gráficos:

Series temporales: Cuando pensamos en series temporales a todos nos viene la imagen de las típicas gráficas del mercado de valores con subidas y bajadas en función del tiempo. Si el lapso de tiempo a considerar es muy grande quizás no nos va a caber toda la evolución de la línea en una sola gráfica o de hacerlo perderemos resolución de los detalles que ocurren en cortos periodos de tiempo. Para evitar eso se propone usar un gráfico de doble panel, uno fijo en la parte inferior donde siempre se muestra un plano general de toda la evolución y uno en la parte superior en el que se puede hacer zoom in y out por si sólo queremos centrarnos en una parte de la gráfica.

Diagramas Sandkey: En muchas ocasiones los datos con los que trataremos representarán una situación en la que hay flujos de alguna entidad que se dividen en diferentes subflujos o vuelven a unirse de en un único flujo. Para representar correctamente esta situación se usan los diagramas Sandkey en los que dichos flujos se representan como franjas de distinto grosor que avanzan (normalmente) de izquierda a derecha alcanzando distintos nodos intermedios en los que pueden mezclarse con otras franjas. Los nodos alineados verticalmente indican flujos llegando y saliendo en un mismo instante de tiempo, mientras que los nodos en distintas posiciones horizontales indican diferentes instantes en la evolución de estos flujos.

Gráficos animados: Hasta ahora hemos representado la temporalidad como un eje en nuestras gráficas (normalmente el horizontal) pero existe otra forma más natural de hacerlo si la tecnología lo permite. Supongamos que el gráfico tiene la capacidad para irse modificando a medida que va pasando el tiempo como si de una animación se tratara. Con Plotly esto es posible y en este Kernel mostramos un ejemplo con un gráfico muy conocido procedente de Gapminder donde se muestra la evolución temporal de un diagrama de dispersión de la esperanza de vida vs. la renta per cápita en distintos países. Merece la pena echarle también un vistazo a la gráfica original que se encuentra en https://www.gapminder.org/tools/ porque no tiene desperdicio.

Mapa coroplético: Cuando los datos con los que estamos tratando son de naturaleza geográfica quizás nos interese mostrarlos encima de un mapa. Plotly tiene muchas soluciones para esto pero en mi opinión no muy satisfactorias. Afortunadamente, existe otra librería llamada Leaflet que está especialmente dedicada a este tipo de gráficos y se integra muy eficazmente con cartografías de uso abierto como el OpenStreetMap. En el caso particular de este Kernel, se construye un mapa coroplético demográfico de los municipios de Cataluña, es decir, se representa el número de habitantes de un municipio coloreando la región de dicho municipio correspondientemente.

Espero que estos 4 gráficos os sean de ayuda tanto como me lo han sido a mí y los añadáis en vuestro cajón de sastre de Data Scientist.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *