Interactive Dashboards with R Shiny

Standard Course
£350 +VAT
per delegate
Course duration: 1 Day

After the course, attendees will have an extensive knowledge of the Shiny web application structure, be able to create interactive dashboards, customize the application’s look and deploy the finished Shiny application on a variety of platforms. 

Who is it for?

R users who wish to build interactive web applications using Shiny.


The course is designed for experienced R users with knowledge of the base R language, the Tidyverse packages, and the ggplot2 visualization package. Additionally, they should be comfortable with writing user functions and control flow statements such as for loops and if statements. 

What you will learn

About R Shiny

  • Use case examples of R Shiny for different business scenarios
  • Structure of a Shiny web application
    • What is server function and what is user interface (ui)
    • Explain server function – ui interaction using examples
      • Text
      • Plot
      • Input options
  • Introducing course case study
    • A dashboard that analyses stock data/pharma data (can be decided later)
    • Create a basic dashboard with a header, text and a plot

Plan your dashboard

Dashboard Inputs

  • What is the input argument
  • Text input
  • Numeric inputs
  • Dates
  • Set lists and choices
  • File uploads

Dashboard Outputs

  • textOutput
  • plotOutput
  • tableOutput

Customize dashboard layout

  • fluidRow() and column()
  • What’s happening under the wraps (very basic explanation)

Deeper dive into the server function

  • What is the output argument

Dashboard Outputs

  • Render text
  • Render tables
  • Render plot

About reactive programming

  • reactive components in R Shiny

Plan a dashboard with reactive conductors

  • Creating reactive expressions with reactive() and reactiveValues()
  • Create reactive observers with observe(), observeEvent()
  • Create different action buttons:
    • bindEvent()
    • Observe() and reactiveEvent()
  • Controlling reactivity with isolate() and scheduled executions

Data masking and the use to Tidyverse packages in R Shiny

Downloading Dashboard contents

Embedding images

Referencing CSS style file

Common Add-on packages

  • Quick demo of the commonly used add-on packages for layout customization
    • Shinydashboard and/or bs4Dash
    • Fresh
    • bslib
    • Shinywidgets

  • Publishing on
  • Publishing on Posit Connect
  • of ggplot2 and dplyr packages

Interactive Dashboards with R Shiny

Our courses are live instructor-led and can be attended virtually or at our office.

Back to Training

Talk to us about how we can help