After learning the basics of using Shiny to build web applications, this course takes you to the next level by putting your newly acquired skills into practice. You'll get experience developing fun and realistic Shiny apps for different common use cases, such as using Shiny to explore a dataset, generate a customized plot, and even create a word cloud. With all this practice and new knowledge, you will be well-equipped to develop Shiny apps for your own use.
In the first chapter, you'll review the essentials of Shiny development. You'll get reintroduced to the basic structure of a Shiny application, as well as some core Shiny concepts such as inputs, outputs, and reactivity. Completing this chapter will help refresh your Shiny knowledge and ensure you have the required skills to develop Shiny apps for real-life scenarios.Introduction50 xpSimple text100 xpFormatted text100 xpAdding structure to your app100 xpInputs and outputs50 xpAdding inputs100 xpAdding placeholders for outputs100 xpConstructing output objects100 xpReactivity 10150 xpReactivity: simple reactive variable50 xpReactivity: composed reactive variable50 xpReactive contexts100 xp
Make the perfect plot using Shiny
Imagine you're preparing a figure for a manuscript using R. You spend a lot of time recreating the same plot over and over again by rerunning the same code but changing small parameters each time. The size of the points, the color of the points, the plot title, the data shown on the plot—these criteria all have to be just right before publishing the figure. To save you from the hassle of rerunning the code many times, you will learn how to create a Shiny app to make a customizable plot.Make the perfect plot using Shiny50 xpExplore the Gapminder data50 xpMore exploration of the Gapminder data100 xpAdding simple inputs to modify a plot50 xpAdd a plot title: text input100 xpChange the point size: numeric input100 xpFit a smooth curve: checkbox input100 xpMore input types50 xpAdd colours to your plot: radio buttons100 xpAdd a continent selector: select input100 xpAdd a year filter: numeric slider input100 xpAdvanced features to improve your plot50 xpAdd colours to your plot: color input100 xpMaking your plot larger100 xpMake your plot interactive100 xp
Explore a dataset interactively with Shiny
Let’s say your supervisor is impressed by the plot you created with Shiny and now wants to get familiar with the dataset you used in the plot. They don't want to simply have a raw data file, they want an interactive environment where they can view the data, filter it, and download it. This chapter will guide you in creating such an application—a Shiny app for exploring the Gapminder dataset.Explore a dataset with Shiny50 xpSee the data in a table100 xpFilter by life expectancy100 xpSelect a continent to view100 xpAllow "All" continents to be viewed100 xpMore ways to view data: plot and download50 xpPlot the data100 xpDownload the filtered data100 xpReactive variables50 xpReactive variables reduce code duplication100 xpMore benefits of reactive variables50 xpVisual enhancements50 xpMake the table interactive100 xpPlace different outputs on different tabs100 xpAdd CSS to modify the look of the app100 xp
Create your own word cloud in Shiny
Your friend really likes word clouds and has written an R function to generate them. They want to share this function with all their friends, but not all of them know how to use R. You offer to help by building a Shiny app that uses their function to let people create their own word clouds. This will allow all their friends—even the ones who are unfamiliar with R—to generate word clouds using a point-and-click interface. This chapter will guide you through the steps required to build this app.Word clouds in Shiny50 xpWord cloud Shiny app100 xpChange the word cloud parameters100 xpAdd a layout100 xpAdding word sources50 xpUse your own words100 xpUpload a text file (ui)100 xpUpload a text file (server)100 xpCombining all the word sources50 xpChoose the data source (ui)100 xpChoose the data source (server)100 xpConditionally show or hide required inputs100 xpFine tune the reactivity50 xpDon't continuously create new word clouds100 xpReactivity: effects of isolation50 xpCreate a new word cloud on demand100 xpWrap-up: Go and make your own apps!50 xp
In the following tracksShiny Fundamentals with R
PrerequisitesBuilding Web Applications with Shiny in R
Dean AttaliSee More
Founder & Lead R-Shiny Consultant at AttaliTech Ltd
Dean is an R-Shiny consultant with years of experience as a software engineer at Google, IBM, and various startups. He is the author of several R packages, including shinyjs, timevis, and ggExtra, as well as the author of a popular R-Shiny blog . Dean holds a MSc in Bioinformatics (U of British Columbia) and a Bachelors of Computer Science (U of Waterloo).