Skip to content
Related Articles

Related Articles

Improve Article

Shading confidence intervals manually with ggplot2 in R

  • Last Updated : 30 Jun, 2021
Geek Week

In this article, we will see how to generate Shading confidence intervals manually with ggplot2 in R Programming language. 

Let us first draw a regular curve and then add confidence intervals to it.

Example:

R




# Load Packages
library("ggplot2"
  
# Create a DataFrame for Plotting
DF <- data.frame(X = rnorm(10),                                   
                 Y = rnorm(10))
  
# Plot the ggplot2 plot
ggplot(DF, aes(X, Y)) +                                     
  geom_line(color = "dark green", size = 2)

Output:



linegraph

LineGraph using ggplot2

To add shading confidence intervals, geom_ribbon() function is used. Which displays a Y interval defined by ymin and ymax. It has aesthetic mappings of ymin and ymax. Other than that it also has some more parameters which are not necessary. 

Syntax : geom_ribbon(mapping, color, fill, linetype, alpha, …)

Parameters :

  • mapping : aesthetic created by aes() to define ymin and ymax.
  • color : Specifies the color of border of the Shading interval.
  • fill : Specifies the color of Shading Confidence Interval.
  • linetype : Specifies the linetype of the border of Confidence Interval.
  • alpha : Specifies the Opacity of the Shading Interval.
  • … : geom_ribbon also has other parameters such as data, stat, position, show.legend, etc. You can use them as per your requirements but in general case they are not useful as much.

Return : Y interval with the specified range.

Example:

R




# Load Packages
library("ggplot2"
  
# Create DataFrame for Plotting
DF <- data.frame(X = rnorm(10),                                   
                 Y = rnorm(10))
  
# ggplot2 LineGraph with Shading Confidence Interval
ggplot(DF, aes(X, Y)) +                                     
  geom_line(color = "dark green", size = 2) +
  geom_ribbon(aes(ymin=Y+0.5, ymax=Y-0.5), alpha=0.1, fill = "green"
              color = "black", linetype = "dotted")

Output:

shading confidence intervals

LineGraph with shading confidence intervals




My Personal Notes arrow_drop_up
Recommended Articles
Page :