# Shadowing your ggplot lines. Forecasting confidence interval use case.

[This article was first published on

Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.

**R | TypeThePipe**, and kindly contributed to R-bloggers]. (You can report issue about the content on this page here)Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.

Yesterday I was asked to easily plot confidence intervals at ggplot2 chart. Then I came up with this shadowing ggplot2 feature called `geom_ribbon()`

.

It’s not a trivial issue as long as you need to gather your data in order to achieve a *tidy* format. When you already have this data frame, all you need is **geom_ribbon()**.

By using the following commented code you are able to show not only your point estimated forecast but also its confidence or prediction intervals.

library(tidyverse) huron <- data.frame(year = 1875:1972, value = LakeHuron, std = runif(length(LakeHuron),0,1)) huron %>% ggplot(aes(year, value)) + geom_ribbon(aes(ymin = value - std, ymax = value + std), # shadowing cnf intervals fill = "steelblue2") + geom_line(color = "firebrick", size = 1) # point estimate

For a multi-line plot, you should include the colour and group aesthetic as follows:

library(tidyverse) huron <- data.frame(year = rep(1875:1972,2), group = c(rep("a",98),rep("b",98)), value = c(LakeHuron, LakeHuron + 5), std = runif(length(LakeHuron)*2,0,1)) huron %>% ggplot(aes(year, value, fill = group)) + geom_ribbon(aes(ymin = value - std, ymax = value + std, group=group), fill = "steelblue2") + geom_line(color = "firebrick", size = 1)

You can see related R visualizations and tips on TypeThePipe

To

**leave a comment**for the author, please follow the link and comment on their blog:**R | TypeThePipe**.R-bloggers.com offers

**daily e-mail updates**about R news and tutorials about learning R and many other topics. Click here if you're looking to post or find an R/data-science job.

Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.