This course is for individuals considering developing Shiny apps to deliver their research. Thus, the goal will be to teach the skills necessary to translate static products (your current analysis in R) to dynamic products delivered via a simple web-based graphic-user interface.
After a brief survey of the available basic tools (widgets such as slider bars, check boxes, and pick lists), we will move quickly to learn more advanced interactive features.
Activities interspersed throughout the class will provide hands-on practice with sample biological and ecological data. By the end of the course, students will have built a portfolio of example code and will have designed, constructed, and published at least one example Shiny app.
Shiny turns static data products into interactive web apps. With interactive and reactive data visualizations, your audience directly engages with your data for stronger communication and better understanding. The Shiny apps can easily be launched directly to the web via shinyapps.io or Shiny Server to be run by anyone (they don’t need to download your data or have R!).
This course is suitable for students that already have the basic R skills to open data and run analyses or build a basic figure – but who have no or limited prior experience with Shiny.
Participants must have a personal computer (Windows, Mac, Linux) with current versions of R and R Studio installed. A list of packages to preinstall will be sent to participants before the course.
The use of Webcam and headphones are strongly recommended, and a good internet connection.
Orientation and Introduction to Shiny.
- Getting everyone up and running.
- Overview of course procedures and expectations.
- Demonstration of Shiny products.
- Free publishing options with ShinyUI and RPub.
- A First Shiny App.
- Basic components: User Interface and Server components.
- Overview of available widgets (slider bars, pick lists, check boxes, etc.).
- Build basic apps: Use simple published examples as a guide, transcribe the code to work with a new dataset.
Focus on the User Interface.
- Common applications of Shiny (more practice with widgets).
- More practice with basic widgets to select parameters, subset data, etc.
- Build a basic Shiny app for your own data (or a class sample dataset).
- Dashboard Design Tools and Options.
- UI layout autoscaling vs. absolute position.
- Tabs and navigation bars.
- Conditional panels.
- More hands-on practice with your own data (or a class sample dataset).
Focus on Shiny Server.
- Putting the right code in the right places.
- What happens when you run Shiny? (and where are all your data objects?).
- Where and when to load data, libraries, and functions.
- Troubleshooting common problems.
- Reactive Programming.
- Base reactivity on project selection, data subset selection, or parameter selection.
- Use submit and isolate to manage conditional reactivity.
- Add a reactive element and submit button to your Shiny app built on Tuesday.
More Reactivity and More Practice.
- Interactive Plots.
- Use click, double click, hover, and brush to select data subsets from a plot.
- Build interactive plot using base plot and ggplot with your own data (or a class sample dataset).
- Build an interactive plot using ggplot with your own data (or a class sample dataset).
- Add code to print results of an interactive session.
- Successfully complete at least one of five possible exercises to ensure understanding and practice troubleshooting.
Publishing Shiny Material.
- Simple Sharing.
- Advice on file managemet for easy sharing.
- Orientation to RStudio’s hosting service, Shinyapps.io.
- Brief comments on other advanced sharing options (Shiny Server, GitHub, etc.).
- Share one of your apps with a classmate using zipped folder or Shinyapps.io.
- Shiny with R Markdown (Optional, or more practice building example apps).
- Intergrating Shiny content into R Markdown documents.
- Publishing results of reactive programming to an R Markdown report.
- Course Fee
- Early bird (until December 31st, 2019):
- 430 € *
(344 € for Ambassador Institutions)
- Regular (after December 31st, 2019):
- 496 € *
(396.8 € for Ambassador Institutions)
- This includes course material (VAT included).
* Participants from companies/industry will have an extra charge of 100 €.