Dates avec le mois et le jour dans la série chronologique tracer dans ggplot2 avec la facette pendant des années

Je veux avoir les deux month et day dans l'axe des x de la série temporelle de la parcelle lors de l'utilisation de facet pendant des années dans ggplot2. Mon MWE est ci-dessous:

set.seed(12345)
Date <- seq(as.Date("2010/1/1"), as.Date("2014/1/1"), "week")
Y <- rnorm(n=length(Date), mean=100, sd=1)
df <- data.frame(Date, Y)

df$Year <- format(df$Date, "%Y")
df$Month <- format(df$Date, "%b")
df$Day <- format(df$Date, "%d")

df$MonthDay <- format(df$Date, "%d-%b")


p <- ggplot(data=df, mapping=aes(x=MonthDay, y=Y, shape=Year, color=Year)) + geom_point() +geom_line(aes(group = 1))
p <- p + facet_grid(facets = Year ~ ., margins = FALSE) + theme_bw()
print(p)

Dates avec le mois et le jour dans la série chronologique tracer dans ggplot2 avec la facette pendant des années

J'ai essayé de contrôler l'axe des x des étiquettes avec la commande suivante

p + scale_y_continuous() + scale_x_date(labels = date_format("%d-%b"))

Mais il déclenche le message d'erreur suivant.

Error: Invalid input: date_trans works with objects of class Date only

Aucune aide pour résoudre ce problème sera fortement appréciée. Merci d'avance pour votre aide.

source d'informationauteur MYaseen208