Book Image

Hands-On Dashboard Development with Shiny

By : Chris Beeley
Book Image

Hands-On Dashboard Development with Shiny

By: Chris Beeley

Overview of this book

Although vanilla Shiny applications look attractive with some layout flexibility, you may still want to have more control over how the interface is laid out to produce a dashboard. Hands-On Dashboard Development with Shiny helps you incorporate this in your applications. The book starts by guiding you in producing an application based on the diamonds dataset included in the ggplot2 package. You’ll create a single application, but the interface will be reskinned and rebuilt throughout using different methods to illustrate their uses and functions using HTML, CSS, and JavaScript. You will also learn to develop an application that creates documents and reports using R Markdown. Furthermore, the book demonstrates the use of HTML templates and the Bootstrap framework. Moving along, you will learn how to produce dashboards using the Shiny command and dashboard package. Finally, you will learn how to lay out applications using a wide range of built-in functions. By the end of the book, you will have an understanding of the principles that underpin layout in Shiny applications, including sections of HTML added to a vanilla Shiny application, HTML interfaces written from scratch, dashboards, navigation bars, and interfaces.
Table of Contents (5 chapters)

Layout Functions in Shiny

In the first chapter, we got introduced to the basics of Shiny applications and the various Shiny commands. The layout functions in Shiny describe the different functions that is available in order to review the applications with each of the layouts with the same content. This chapter explains in detail about producing the different layout functions. We will be covering the following topics throughout the chapter:

  • Bootstrap and how it works for Shiny
  • How to produce layouts using rows and columns
  • The different layout functions available with Shiny
  • Navigation bar and navigation list layouts
  • Using conditional UI elements, as well as how to take control of the UI