首先是一些玩具数据:
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)
最初的问题是询问如何为每所学校绘制“价值年”线。答案或多或少对应于下面的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轴变量是数字时就不需要美学?
一只斗牛犬