Book Image

Web Application Development with R Using Shiny Second Edition - Second Edition

By : Chris Beeley
Book Image

Web Application Development with R Using Shiny Second Edition - Second Edition

By: Chris Beeley

Overview of this book

R is a highly flexible and powerful tool for analyzing and visualizing data. Most of the applications built using various libraries with R are desktop-based. But what if you want to go on the web? Here comes Shiny to your rescue! Shiny allows you to create interactive web applications using the excellent analytical and graphical capabilities of R. This book will guide you through basic data management and analysis with R through your first Shiny application, and then show you how to integrate Shiny applications with your own web pages. Finally, you will learn how to finely control the inputs and outputs of your application, along with using other packages to build state-of-the-art applications, including dashboards.
Table of Contents (14 chapters)
Web Application Development with R Using Shiny Second Edition
Credits
About the Author
About the Reviewer
www.PacktPub.com
Preface
Index

Dygraphs with a prediction


Although we've already looked at dygraphs, it's worth looking at it again, so we can see how to build a prediction in the final plot. This is quite simple to do, and the particular prediction statistics that we will use here has few assumptions about the data and can be used in most contexts. Before we take a look at the code, let's take a look at the final application:

As you can see, the graph contains the actual data as well as a prediction of how the data might look over the next few years. The blue shading indicates prediction intervals, which give us an idea of the reliability of the projection. Let's now turn our attention to the code to produce this plot:

output$predictSeries <- renderDygraph({

Again, the graph is produced using the special renderDygraph() function.

  theSeries <- group_by(passData(), yearmon) %>%
  summarise(meanSession = mean(sessionDuration, na.rm = TRUE),
    users = sum(users), sessions = sum(sessions)
  )

As mentioned earlier...