2017-07-02 6 views
0

Einfügen eines mathematischen Symbols in den Text sollte nicht so kompliziert sein, ich vermutete!Math Symbol Fehler in geom_text

OTH, auch ähnliche Beispiele suchen ggplot2 facet_wrap with mathematical expression

noch nicht in der Lage Ω (Omega) Symbol zum geom_text einzufügen ich bin!

Angenommen, Sie Grundstreudiagramm haben, und Sie wollen mit (Omega) Mathe Symbol Mittelwert hinzufügen, um jede Facette,

mean.Petal <- aggregate(iris["Petal.Width"], iris["Species"], mean) 
    Species  Petal.Width 
1  setosa  0.246 
2 versicolor  1.326 
3 virginica  2.026 

ggplot(iris) + 
    geom_point(aes(y=Sepal.Length,x=Sepal.Width ,col=factor(Species))) + 
    facet_wrap(~ Species)+ 
    geom_text(data = mean.Petal, parse = TRUE, 
      aes(x = 4.5, y = 7, label=sprintf('mean_Petal=%.2f %s', 
               round(Petal.Width,digits=2),'Omega'))) 

Fehler bei Parse (text = as.character (Labor)): : 1: 17: unerwartet Symbol 1: mean_Petal = 0,25 Omega

Ein weiterer

geom_text(data = mean.Petal, parse = TRUE, 
      aes(x = 4.5, y = 7, label=paste('mean_Petal=', 
            round(Petal.Width,digits=2),expression(Omega),sep=' '))) 
versuchen

Fehler bei Parse (text = as.character (Labor)): 1: 18: unerwartete Symbol 1: mean_Petal = 0,25 Omega

+0

nach dem Omega-Symbol geben. 'geom_text (data = mean.Petal, parse = WAHR, aes (x = 2,5, y = 7, Label = einfügen ('mean_Petal =', Ausdruck (Omega), sep = '')))' – Suren

+0

Was ist dein Ziel mit 'round (Petal.Width, digits = 2)'? – Suren

+0

@DiscoSuperfly danke. 'round (Petal.Width, digits = 2)' Ich brauche Mittelwerte vor dem 'Omega'. Also ich brauche sie! – Alexander

Antwort

4

Wenn geom_text mit parse = TRUE verwenden, möchten Sie gemeinsam ein setzen Zeichenfolge, die zu einem plotmath Ausdruck entspricht, so können Sie tun:

ggplot(iris) + 
    geom_point(aes(y=Sepal.Length,x=Sepal.Width ,col=factor(Species))) + 
    facet_wrap(~ Species)+ 
    geom_text(data = mean.Petal, parse = TRUE, 
       aes(x = 3, y = 7, 
        label=paste("'Mean petal' ==", round(Petal.Width, digits=2), "* Omega"))) 
+0

Danke. Das habe ich gesucht! – Alexander