Dodaj tekst do fasetowanego wykresu w ggplot2 z datami na osi X
Jestem nowym użytkownikiem ggplot2 i było cudownie, ale mam problem z jedną rzeczą.
Sporządziłem szereg szeregów czasowych, które obejmują rok. Oś X pochodzi ze zmiennej klasyDate
. Ukształtowałem wykres tak, że mam 7 szeregów czasowych w kolumnie z niezależnymi osiami y. Głównym celem tej grafiki jest porównanie korelacji każdego aspektu z górnym aspektem.
Ostatnią rzeczą, jaką chciałbym zrobić, jest dodanie tekstu (szacunkowa korelacja między perełkami między każdym aspektem a pierwszym) do wykresu w prawym górnym rogu każdego aspektu.
To okazuje się niezwykle trudne, ponieważgeom_text()
wymaga współrzędnych xiy dla każdego bitu tekstu. Jak określić współrzędne, gdy oś X to daty, a oś Y jest inna dla każdego aspektu? Oto przykładowe dane i kod, który do tej pory posiadam, więc możesz odtworzyć to, co do tej pory miałem:
library(ggplot2)
date <- rep(as.Date(1:365,origin='2011-1-1'),7)
location <- factor(rep(1:7,365))
product <- rep(letters[1:7], each=365)
value <- c(sample(1:10, size=365, replace=T),sample(1:3, size=365, replace=T),
sample(10:100, size=365, replace=T), sample(1:50, size=365, replace=T),
sample(1:20, size=365, replace=T),sample(50:100, size=365, replace=T),
sample(1:100, size=365, replace=T))
dat<-data.frame(date,location,product,value)
qplot(date, value, data=dat, geom="line", color=location, group=location,
main='Time Series Comparison', xlab='Month (2011)',ylab='Value') +
facet_grid(product ~ ., scale = "free_y")