Этот вопрос следует из более раннего вопроса и его ответов.
Сначала некоторые данные о игрушке:
df = read.table(text =
"School Year Value
A 1998 5
B 1999 10
C 2000 15
A 2000 7
B 2001 15
C 2002 20", sep = "", header = TRUE)
Первоначальный вопрос задал вопрос о том, как строить линии Value-Year для каждой школы. Ответы более или менее соответствуют p1 и p2 ниже. Но также рассмотрим p3.
library(ggplot2)
(p1 <- ggplot(data = df, aes(x = Year, y = Value, colour = School)) +
geom_line() + geom_point())
(p2 <- ggplot(data = df, aes(x = factor(Year), y = Value, colour = School)) +
geom_line(aes(group = School)) + geom_point())
(p3 <- ggplot(data = df, aes(x = factor(Year), y = Value, colour = School)) +
geom_line() + geom_point())
Оба p1 и p2 выполняют задание. Разница между p1 и p2 заключается в том, что p1 рассматривает Year
как числовой, тогда как p2 рассматривает Year
как фактор. Кроме того, p2 содержит эстетику group
в geom_line
. Но когда эстетика group
отбрасывается, как в p3, линии не рисуются.
Вопрос: почему эстетика group
необходима, когда переменная оси x является фактором, но эстетика group
не нужна, когда переменная оси x является числовой?