[R] annotate

Rui Barradas ru|pb@rr@d@@ @end|ng |rom @@po@pt
Thu Oct 5 10:09:42 CEST 2023


Às 20:34 de 04/10/2023, Subia Thomas OI-US-LIV5 escreveu:
> Colleagues,
> 
> I wish to create y-data labels which meet a criterion.
> 
> Here is my reproducible code.
> library(dplyr)
> library(ggplot2)
> library(cowplot)
> 
> above_92 <- filter(faithful,waiting>92)
> 
> ggplot(faithful,aes(x=eruptions,y=waiting))+
>    geom_point(shape=21,size=3,fill="orange")+
>    theme_cowplot()+
>    geom_hline(yintercept = 92)+
>    annotate(geom="text",x=above_92$eruptions,y=above_92$waiting+2,label=above_92$waiting)
> 
> A bit of trial and error is required to figure out what number to add or subtract to above_92$waiting.
> 
> Is there a more efficient way to do this?
> 
> 
> Thomas Subia
> Lean Six Sigma Senior Practitioner
> 
> DRÄXLMAIER Group
> DAA Draexlmaier Automotive of America LLC
> 
> mailto:thomas.subia using draexlmaier.com
> http://www.draexlmaier.com
> 
> "Nous croyons en Dieu.
> Tous les autres doivent apporter des données.
> Edward Deming
> 
> 
> Public: All rights reserved. Distribution to third parties allowed.
> 
> ______________________________________________
> 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.
Hdello,

Yes, there is an automatic way of doing this.
Use a new data set in geom_text or annotate. Below I use geom_text.
Then vjust will take care of the labels placement.




library(dplyr)
library(ggplot2)
library(cowplot)

above_92 <- filter(faithful, waiting > 92)

ggplot(faithful, aes(x = eruptions, y = waiting)) +
   geom_point(shape=21,size=3,fill="orange") +
   geom_hline(yintercept = 92) +
   # use a new data argument here
   geom_text(
     data = above_92,
     mapping = aes(x = eruptions, y = waiting, label = waiting),
     vjust = -1
   ) +
   theme_cowplot()




Hope this helps,

Rui Barradas


-- 
Este e-mail foi analisado pelo software antivírus AVG para verificar a presença de vírus.
www.avg.com



More information about the R-help mailing list