2017-05-03 5 views
0

Je veux ajouter "R^2 = 70%" à ma parcelle en utilisant geom_text() (où^indique un indice supérieur).geom_text(), plotmath et%

Sans le signe%, il est facile:

my.data <- data.frame(x=1:5, y=1:5) 
p1  <- ggplot(my.data, aes(x=x, y=y)) + geom_point() 
p1  <- p1 + geom_text(x=2.5, y=5, label="R^2 == 70", parse=TRUE) 
p1 

Ajout% est plus délicat que prévu. J'ai réussi à l'obtenir en ajoutant une deuxième déclaration geom_text():

p1 <- p1 + geom_text(x=2.63, y=4.97, label="%") 
p1 

Comment peut-il être fait avec une seule instruction geom_text()?

Répondre

2

Cela fonctionne ...

geom_text(x=2.5, y=5, label="R^2 == 70*'%'", parse=TRUE) 
+0

Merci. C'est le * qui me manquait. – user13424

+0

Oui, vous devez tromper plotmath en pensant qu'il multiplie 70 par une variable appelée '%'. –

0


library(ggplot2) 

my.data <- data.frame(x=1:5, y=1:5) 
ggplot(my.data, aes(x=x, y=y)) + 
    geom_point() + 
    annotate("text", x = 2.5, y = 5, label = "paste(R^2, \" = 70\", \"%\")", parse = TRUE)