[R] How to add a geom_smooth() line

Rui Barradas ru|pb@rr@d@@ @end|ng |rom @@po@pt
Fri Aug 24 06:31:30 CEST 2018


Hello,

if you want to fit different models to each of deliveries and launches, 
use the wide format instead:


ggplot(data = data, aes(x = timeline)) +
   geom_point(aes(y = deliveries), color = "blue") +
   geom_smooth(aes(y = deliveries), color = "blue", method = lm, formula 
= y ~ log(x)) +
   geom_point(aes(y = launches), color = "red") +
   geom_smooth(aes(y = launches), color = "red", method = lm, formula = 
y ~ x) +
   xlab("Deliveries") +
   ylab("Launches") +
   ggtitle("Scatterplot of Launches vs. Deliveries")


Hope this helps,

Rui Barradas

On 24/08/2018 05:08, Rui Barradas wrote:
> Hello,
> 
> The trick is to reshape your data from wide to long format.
> There are many ways to do this, I will use package reshape2.
> 
> Make up a dataset:
> 
> 
> library(ggplot2)
> library(reshape2)
> 
> set.seed(9773)
> n <- 20
> data <- data.frame(timeline = 1:n,
>                     deliveries = log(1:n) + runif(n),
>                     launches = (1:n)/4 + runif(n))
> 
> # reformat it
> long <- melt(data, id.vars = "timeline")
> head(long)
> 
> # et voila!
> ggplot(long, aes(timeline, value, colour = variable)) +
>      geom_point() +
>      stat_smooth() +
>      xlab("Deliveries") +
>      ylab("Launches") +
>      ggtitle("Scatterplot of Launches vs. Deliveries")
> 
> 
> Use the smoothing function of your choice, I left it with the default 
> loess.
> 
> Hope this helps,
> 
> Rui Barradas
> 
> 
> On 24/08/2018 03:38, Jeff Reichman wrote:
>> R-help
>>
>>
>> I want to add two smooth lines (geom_smooth()) for each scatter plot.  
>> How
>> do I do that?
>>
>>
>> ggplot() +
>>
>>    geom_point(data=data, aes(x=timeline, y=deliveries), color="blue") +
>>
>>    geom_point(data=data, aes(x=timeline, y=launches), color="red") +
>>
>>    xlab("Deliveries") +
>>
>>    ylab("Launches") +
>>
>>    ggtitle("Scatterplot of Launches vs. Deliveries")
>>
>>
>> Jeff
>>
>>
>>     [[alternative HTML version deleted]]
>>
>> ______________________________________________
>> R-help using r-project.org mailing list -- To UNSUBSCRIBE and more, see
>> https://stat.ethz.ch/mailman/listinfo/r-help
>> PLEASE do read the posting guide 
>> http://www.R-project.org/posting-guide.html
>> and provide commented, minimal, self-contained, reproducible code.
>>
> 
> ---
> This email has been checked for viruses by AVG.
> https://www.avg.com
> 
> ______________________________________________
> R-help using r-project.org mailing list -- To UNSUBSCRIBE and more, see
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide 
> http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.




More information about the R-help mailing list