Skip to content

Overlay boxplot and scatter.smooth line

5 messages · Adams, Jean, Johannes Radinger, David Winsemius +1 more

#
On Nov 19, 2013, at 2:43 AM, Johannes Radinger wrote:

            
?boxplot  # .... sends you to ?boxplot.stats which should be used to  determine what user coordinates are being used when plotting the boxplot.

xlim  would be suitable for getting both plots on hte same x-scale.

  
    
#
Same thing using ggplot...

# your data
x <- c(rep(1,100),rep(2,100),rep(3,100))
y <- c(rnorm(100,1),rnorm(100,2),rnorm(100,3))

df <- data.frame(x=x, y=y)

library(ggplot2)
ggp <- ggplot(df) + labs(x="X", y="Y") 
ggp <- ggp + geom_boxplot(aes(x=factor(x), y=y)) 
ggp <- ggp + geom_smooth(formula=y~x, aes(x=x, y=y), method="loess", se=F) 
ggp

Setting method="lm" above would plot linear model instead of loess, setting se=T (the default) would plot 95% CL for the model.

Adding the line:
ggp <- ggp +  stat_summary(fun.data="mean_cl_normal", aes(x=factor(x),y=y), size=1.2, color="red")
ggp

will overlay mean and 95% CL (assuming normal distribution of error) at each level of x. 

-----Original Message-----
From: Johannes Radinger [mailto:johannesradinger at gmail.com] 
Sent: Tuesday, November 19, 2013 10:01 AM
To: Adams, Jean
Cc: R help
Subject: Re: [R] Overlay boxplot and scatter.smooth line

Thanks...that works great!

/J
On Tue, Nov 19, 2013 at 2:39 PM, Adams, Jean <jvadams at usgs.gov> wrote: