我刚开始学习R语言,我融化了我的框架,用ggplot得到了这个图。在同一个图上应该有两条线,但是连接的线看起来是随机的。
正确的点,但错误的线。
的数据
# Melted my data to create new dataframe
AvgSleep2_DF <- melt(AvgSleep_DF , id.vars = 'SleepDay_Date',
variable.name = 'series')
# Plotting
ggplot(AvgSleep2_DF, aes(SleepDay_Date, value, colour = series)) +
geom_point(aes(colour = series)) +
geom_line(aes(colour = series))
字符串
在geom_line
中有或没有aes(colour = series)
都会导致相同的图形。我在这里做错了什么?
1条答案
按热度按时间y0u0uwnf1#
理解
{ggplot}
中的“美学继承”在开始时可能是一个挑战。下面可能会解释当您在ggplot()
调用中指定美学时geom_line()
会做什么。注:我指定了一个故意的颜色列,与系列规格不同!
字符串
ggplot中的继承将寻找上层定义的美学。
因此,在
geom_point()
层中没有(进一步)定义美学,该层将在上层中查找规范,即ggplot()
。请进一步注意,
ggplot()
层中的colour
美学被解释为一个分组(在没有特定group
美学的情况下)。型
这将得到x1c 0d1x
虽然我们可以控制与每条线(段)相关联的“分组”,如下所示:
型
注意:由于我在系列列中为第三个点定义了一个单独的“组”,因此在本例中,它被描述为一条单点“线”。
的