Chcę wyróżnić wybrane punkty i napotkać dziwne zachowanie. Najpierw niektóre fałszywe dane:r - ggplot2 - podświetlanie wybranych punktów i dziwnych zachowań
a <- 1:50
b <- rnorm(50)
mydata <- data.frame(a=a,b=b)
ggplot(mydata,aes(x=a,y=b)) + geom_point()
To działa poprawnie. Teraz, aby podkreślić pewne punkty, dodaję kolejną geom_point
warstwy:
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")
Zauważ, że jestem wyświetlanie jedynie ograniczony zakres danych ([20:40]
). Teraz przychodzi dziwne zachowanie:
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")
Zmiana rozmiaru wybranego zakresu, pojawia się błąd, grubsza przetłumaczyć z języka niemieckiego: Error...: Arguments implying different number of rows
. O dziwo, zmienia się to w zależności od wybranego zakresu. [23:40]
zadziała, [22:40]
nie będzie.
Błąd w języku angielskim brzmi:
Error in data.frame(x = c(19L, 21L, 22L), y = c(0.28198, -0.6215, :
arguments imply differing number of rows: 3, 31
Mam nadzieję, że to nie przeszkadza, ale dodałem błąd w angielskiej – csgillespie