Search code examples
rplotggplot2normal-distributionstandard-deviation

How to draw normal distribution graph with two standard deviation in R


I am new in R and would like to plot a normal distribution graph where the region of two standard deviation is selected by arrows, exactly as shown below.

enter image description here


Solution

  • This question lacks the effort but it piqued my interest, so there you have it:

    #standard normal distribution data
    x <- seq(-4, 4, length=100)
    hx <- dnorm(x)
    
    #plot a standard normal distribution
    plot(x, hx, type="l", lty=2, xlab="x value")
    #plot a vertical line at -2*std
    abline(v=-2, col='red')
    #plot a vertical line at  2*std
    abline(v= 2, col='red')
    #make the arrow
    arrows(x0=-2, y0=0.35, x1=2, y1=0.35, code=3, col='blue')
    #plot the text
    text(x=0, y=0.37,labels='95%', col='red')
    

    Result:

    enter image description here