Je suis en train de faire quelque chose comme https://stackoverflow.com/a/29649406/15485 mais je reçois l'erreurgeom_rect et ggplot2 Erreur: L'esthétique doit être soit la longueur 1 ou même que les données (2)
Error: Aesthetics must be either length 1 or the same as the data (2): xmin, xmax, ymin, ymax, x, y
Que « (2) » veux dire?
En quoi consiste «l'esthétique»? Je aes
dans ggplot
et aes
à geom_rect
mais je n'ai aucune idée sur la façon de les corriger ... Je suis peur que je ne pourrai jamais saisir ggplot
...
days<-rep(Sys.Date(),100)+seq(1,100)
v<-sin(as.numeric(days))
df<-data.frame(days=days,v=v)
shade <- data.frame(x1=c(as.Date('2017-10-15'),as.Date('2017-11-11')),
x2=c(as.Date('2017-10-20'),as.Date('2017-11-13')),
y1=c(-Inf,-Inf), y2=c(Inf,Inf))
library(ggplot2)
plot(ggplot(df,aes(x=days,y=v))
+geom_line()
+geom_rect(data=shade,
mapping=aes(xmin=x1, xmax=x2, ymin=y1, ymax=y2), color='grey', alpha=0.2)
+geom_point())
BTW, le '(2)' signifie que la longueur de la 'data' est actuellement 2. Autrement dit, l'esthétique ne sont autorisés à être 1 ou 2, telle qu'elle est actuellement définie. @ Z.Lin montre pourquoi. – Axeman