R Shiny App es un paquete de R destinado al desarrollo de aplicaciones interactivas de visualización de datos. Permite la instalación de una aplicación web corriendo en R en un servidor, y que podremos personalizar de forma sencilla con sintaxis HTML, CSS o Javascript.
En esta publicación damos por hecho que tenemos R instalado. Si este no es tu caso, te recomendamos que eches un vistazo a nuestra publicación Bienvenida a R Studio. El primer paso será abrir R Studio e instalar R Shiny con el siguiente comando en la terminal:
R descargará la última versión de R Shiny y la instalará. Al acabar el proceso deberíamos ver en pantalla:
Para comprobar que Shiny se ha instalado correctamente, escribimos en la terminal de R y ejecutamos:
Esto debería ejecutarse sin ningún error. Puede ser que dependiendo de nuestra versión de R, nos advierta de que la versión de R Shiny ha sido escrita en una versión de R superior, pero esto no debería causar ningún problema, sólo es un warning que nos devolverá la terminal de R.
Toda aplicación R Shiny App se ejecuta en un ordenador (al que llamamos “servidor”) con R instalado. La estructura de cualquier aplicación se divide en dos funciones principales:
La función UI se encarga de crear la interfaz visual de nuestra aplicación. Un ejemplo sería la función fluidPage():
Por último, una función ejecuta tanto _ui_ como server, y nos muestra el resultado.
Podemos esquematizar el comportamiento de la aplicación tal y como vemos en el siguiente diagrama:
Vamos a ver un ejemplo de una sencilla aplicación Shiny. Creamos un archivo llamado shiny.R y empezamos a crear nuestras tres funciones:
Nuestra función ui quedaría de la siguiente forma:
En la variable ui no tenemos más que código HTML, cómo podemos ver si escribimos ui en la terminal de R.
Este código HTML será la plantilla que use nuestra aplicación junto con la función server para renderizar la visualización en tiempo real.
La función server debe crear y mantener actualizado un histograma. Por ello, debemos darle los datos a incluir en el gráfico, crear el histograma y todo ello, dárselo a la función server como output.
Por último introducimos a la función shiniApp las variables ui y server. El código entero, quedaría tal y como sigue. Atención a importar la librería shiny al principio del script.
Si todo ha ido bien, deberíamos ver en RStudio la visualización en la pestaña viewer.
Si queremos ver nuestro dashboard en el navegador web, debemos pulsar en el botón show in new window.
Más adelante veremos aplicaciones más avanzadas de R Shiny, dónde además limpiaremos y analizaremos los datos, enfocándonos en casos de uso reales.
Si te quieres dominar la visualización en R Shiny, en Nebulova tenemos un curso avanzado dónde aprenderás todo necesario para poder crear desde cero aplicaciones alojadas en servidor listas para el cliente final.
A la hora de desarrollar web existen muchas alternativas para todo tipo de proyectos web, pero… ¿Cuál es la mejor?
Descubre por qué en numerosas ocasiones se encuentran situaciones en las que poseer un exceso de datos que puede llegar a suponer un lastre si no se tiene un buen control y manejo sobre la información.
Que Python era y es un lenguaje con gran proyección y en auge ya lo sabíamos algunos, pero esta vez se ha proclamado como el lenguaje de programación más popular en la actualidad, y no nos lo hemos sacado de la chistera, sino que ha sido TIOBE quien lo ha catalogado como tal.