Ich habe ein facettiertes ggplot2
Streudiagramm und möchte zusammenfassende Statistiken über die lineare Regression auf jeder Facette drucken, wie es here und here getan wurde. Im Gegensatz zu diesen Beispielen verwende ich scales="free"
, und die Bereiche der Daten in jeder Facette sind ziemlich unterschiedlich, aber ich möchte, dass die Zusammenfassungsstatistiken in derselben relativen Position in jeder Facette angezeigt werden (z. B. obere rechte Ecke oder was auch immer). Wie kann ich unter geom_text
oder annotate
angeben, dass das Etikett an der gleichen Position wie das Panel erscheinen soll? Druck Korrelationsdaten in der gleichen Plotposition über Facetten
Wo ich recht habe jetzt:
# Fake data
set.seed(2112)
x <- c(1:10, 6:15)
y <- x + c(runif(10), runif(10)*10)
l <- gl(2, 10)
d <- data.frame(x=x, y=y, l=l)
# Calculate a summary statistic (here, the r-squared) in a separate data frame
r_df <- ddply(d, .(l), summarise, rsq=round(summary(lm(y~x))$r.squared, 2))
# Use geom_text and a separate data frame to print the summary statistic
ggplot(d, aes(x=x, y=y)) +
geom_text(data=r_df, aes(x=8, y=8, label=paste("rsq=", rsq)))+
geom_point() +
facet_wrap(~l, scales="free")
Ich möchte, stattdessen haben ggplot
den Text automatisch in der gleichen relativen Position in jeder Facette positionieren.
Ich vermute, eine allgemeinere Lösung beinhaltet Eintauchen in Rastergrafiken? –
@DrewSteen Für die allgemeinere Lösung wäre das Eintauchen in das Raster erforderlich, da alle Spezifikationen im Plotbereich in ggplot im Datenbereich und für die gleiche relative Position im Anzeigebereich angegeben werden. –
Ich werde dorthin gehen, wenn mir jemand zeigt, wie! –