Voglio evidenziare i punti selezionati e ho riscontrato un comportamento strano. Prima alcuni dati fittizi:r - ggplot2 - evidenziando punti selezionati e comportamento strano
a <- 1:50
b <- rnorm(50)
mydata <- data.frame(a=a,b=b)
ggplot(mydata,aes(x=a,y=b)) + geom_point()
Questo funziona correttamente. Ora, per evidenziare alcuni punti, aggiungo un'altra geom_point
strato:
ggplot(mydata[20:40,],aes(x=a,y=b)) +
geom_point() +
geom_point(aes(x=a[c(10,12,13)],y=b[c(10,12,13)]),colour="red")
Nota che sto visualizzando solo una gamma limitata di dati ([20:40]
). Ora arriva lo strano comportamento:
ggplot(mydata[10:40,],aes(x=a,y=b)) +
geom_point() +
geom_point(aes(x=a[c(10,12,13)],y=b[c(10,12,13)]),colour="red")
Modifica delle dimensioni dell'intervallo selezionato, ottengo un errore, approssimativamente tradotto dal tedesco: Error...: Arguments implying different number of rows
. Stranamente, questo varia con l'intervallo selezionato. [23:40]
funzionerà, [22:40]
no.
L'errore in inglese è:
Error in data.frame(x = c(19L, 21L, 22L), y = c(0.28198, -0.6215, :
arguments imply differing number of rows: 3, 31
Spero che non ti dispiaccia, ma ho aggiunto l'errore in inglese – csgillespie