+ - 0:00:00
Notes for current slide
Notes for next slide

Clase 6: Shiny

 

Autor: Lucio Cornejo

1 / 9

Shiny

El paquete Shiny nos permite crear aplicaciones web empleando R (o R Markdown ), sin necesidad de conocer los lenguajes HTML, CSS y JavaScript de desarrollo web.

Sin emmbargo, es posible emplear aquellos tres lenguajes junto a Shiny, para crear aplicaciones más complejas o para personalizar el diseño de las aplicaciones.

 

Ejemplos

2 / 9

Instalación

install.packages("shiny")

 

Primer ejemplo

 

En un nuevo archivo .R, insertemos el siguiente código:

library(shiny)
runExample("01_hello")

 

Versión alternativa del primer ejemplo

 

Analicemos rápidamente este archivo .

3 / 9

Más ejemplos

Pueden ejecutar los siguientes comandos en R para ver modelos de aplicaciones donde se explican algunas de las funcionalidades básicas de Shiny:

runExample("01_hello") # un histograma
runExample("02_text") # tablas y data frames
runExample("03_reactivity") # una expresión reactiva
runExample("04_mpg") # variables globales
runExample("05_sliders") # barras deslizantes
runExample("06_tabsets") # paneles (tabsets)
runExample("07_widgets") # botones y texto de ayuda
runExample("08_html") # aplicación Shiny construida desde HTML
runExample("09_upload") # botón para cargar archivos
runExample("10_download") # botón para descargar archivos
runExample("11_timer") # mostrar la hora actual
4 / 9

Ver rápidamente los ejemplos 5, 7, 9 y 10.

Control widgets

 

Un widget es un elemento web con el cual los usuarios pueden interactuar.

 

Basic Shiny widgets

Galería con el código de los widgets disponibles vía Shiny.

5 / 9

Explorar rápidamente el archivo ejemplo-shiny-02.Rmd .

Creación reactiva de elementos web

 

Función Elemento creado
renderDataTable Tabla de datos vía JavaScript
renderImage imágenes cargadas vía link
renderPlot gráficos
renderPrint resultado impreso
renderTable Tabla convencional
renderText Cadena de caracteres
renderUI Elemento de HTML o su versión análoga en Shiny
6 / 9

Reportes parametrizados: Parte II

Volveremos a trabajar con el primer reporte parametrizado que se creó en este taller, el de temperaturas mensuales promedio en Nottingham.

 

Versión 1

Modificaremos el reporte previo con el fin que en la página web donde se visualiza tal reporte sea posible modificar el año de interés y que se actualice la data y gráficos relevantes del reporte.

Modelo

Versión 2

Crearemos una aplicación web donde se pueda fijar el año de interés para el reporte y descargar la versión parametrizada del reporte (respecto al año fijado) vía un simple click de un botón.

Modelo

7 / 9

Dashboards reactivos

Ahora, emplearemos Shiny en conjunto al paquete Flexdashboard que utilizamos en la sesión pasada.

Esto, con la finalidad de crear un dashboard cuyos gráficos y/o elementos se actualizan a medida que el usuario interactúe con ciertos elementos que incluiremos en el sitio web.

8 / 9

Shiny

El paquete Shiny nos permite crear aplicaciones web empleando R (o R Markdown ), sin necesidad de conocer los lenguajes HTML, CSS y JavaScript de desarrollo web.

Sin emmbargo, es posible emplear aquellos tres lenguajes junto a Shiny, para crear aplicaciones más complejas o para personalizar el diseño de las aplicaciones.

 

Ejemplos

2 / 9
Paused

Help

Keyboard shortcuts

, , Pg Up, k Go to previous slide
, , Pg Dn, Space, j Go to next slide
Home Go to first slide
End Go to last slide
Number + Return Go to specific slide
b / m / f Toggle blackout / mirrored / fullscreen mode
c Clone slideshow
p Toggle presenter mode
t Restart the presentation timer
?, h Toggle this help
eShow TOC with height equal to the page's
dShow TOC with half the page's height
rMove all the slides to the right side of the page
oTile View: Overview of Slides
Alt + fFit Slides to Screen
Esc Back to slideshow