Skip to content

paulcbauer/shiny_workshop

Repository files navigation

Interactive Data Analysis with Shiny

Materials for the GESIS workshop “Interactive Data Analysis with Shiny”, July 23-26, 2024

For the Quarto document of the workshop, click here.

Lecturers: - Paul C. Bauer - Jonas Lieth

Workshop description

The workshop Interactive Data Analysis with Shiny introduces participants to the basics of creating interactive apps with Shiny in R. Interactive data applications are becoming increasingly popular in academia, media, and companies to visualize, manage, and analyze data. Shiny is a tool for creating such (web) applications using R code. It allows you to create interactive data apps with no knowledge of HTML, CSS, or JavaScript. The utilization of interactive applications expands the forms of use of existing data sets and enables users to freely explore the data. The course offers an introduction to reactive programming and the R Shiny package, outlines a workflow for project management, discusses ways of offline and online hosting of Shiny apps, and gives you the opportunity to start your own interactive data analysis project.

Structure of the workshop

The best way to learn R’s versatile capabilities is to try things out and apply the presented concepts. Therefore, we will have a mixture of lectures and hands-on exercises. More specifically, each topic will be introduced in a lecture by the instructors. Participants will then receive a set of exercises on each topic. The solutions of the exercises will be discussed before the start of the next lecture part.

Target group

Participants will find the course useful if:

  • they want to use R to build interactive web applications to analyze and visualize their data.

Goal

By the end of the course participants will:

  • understand the basics of reactive programming for interactive data analysis and visualization

  • know what the structure of a Shiny application looks like

  • be comfortable to use R Shiny to build their own interactive applications

  • have learned about ways to launch and disseminate their Shiny app

  • will have built their first own Shiny app

Requirements

Good working knowledge in R as a programming language including familiarity in the following domains: tidyverse, data type handling, data wrangling, data import, data management, modeling (e.g., linear regression), and data visualization.

Course participants will need a computer or laptop with R (https://cran.r-project.org/), RStudio, (https://www.rstudio.com/), and the R Shiny package (https://shiny.rstudio.com) installed. The programs and the package are free and open source.

Time schedule

Tuesday, 23.07
10:00-11:00 Welcome and introduction
11:00-11:15 Coffee break
11:15-12:00 Your (first) Shiny app
12:00-13:00 Lunch break
13:00-14:15 The front end: Designing the user interface
14:15-14:30 Coffee break
14:30-16:00 Tutorials for the UI
Wednesday, 24.07.
10:00-11:00 Introduction to reactive programming
11:00-11:15 Coffee break
11:15-12:00 Tutorials for reactive programming
12:00-13:00 Lunch break
13:00-14:15 Advanced reactive programming
14:15-14:30 Coffee break
14:30-16:00 Tutorials for reactive programming
Thursday, 25.07
10:00-11:00 Visualization with ggplot2 and Shiny
11:00-11:15 Coffee break
11:15-12:00 Tutorials for visualization
12:00-13:00 Lunch break
13:00-14:15 Testing and deployment
14:15-14:30 Coffee break
14:30-16:00 Tutorials for deployment
Friday, 26.07.
10:00-11:00 Good practices when building your own app
11:00-11:15 Coffee break
11:15-12:00 Build your own app: Design and UI
12:00-13:00 Lunch break
13:00-14:15 Build your own app: Construct the reactive graph
14:15-14:30 Coffee break
14:30-15:30 Build your own app: Strengthen & deploy
15:30-16:00 Exhibit: Show off your new Shiny app

Literature

The course does not require any prior reading.

However, our schedule is primarily based on one textbook which we generally recommend for further reading:

Wickham, Hadley (2020): Mastering Shiny: Build Interactive Apps, Reports, and Dashboards Powered by R. Accessible online at: https://mastering-shiny.org/.

Additional recommended literature: Fay, Colin, Rochette, Sébastien, Guyader, Vincent, and Girard, Cervan (2022): Engineering Production-Grade Shiny Apps. Accessible online at: https://engineering-shiny.org/.

Granjon, David (2022). Outstanding User Interfaces With Shiny. Accessible online at: https://unleash-shiny.rinterface.com

About

Repository of GESIS Shiny Workshop.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published