绘制颜色取决于具有ggplot的类别的时间序列

时间:2016-04-26 09:59:45

标签: r ggplot2

考虑这个最小的工作示例:

library(ggplot2) 
x <- c(1,2,3,4,5,6)
y <- c(3,2,5,1,3,1)
data <- data.frame(x,y)
pClass <- c(0,1,1,2,2,0)

plottedGraph <- ggplot(data, aes(x = x, y = y, colour = factor(pClass))) + geom_line()
print(plottedGraph)

我有一个时间序列y = f(x)其中x是一个时间步长。每个时间步应该有一个颜色,它取决于时间步的类别,记录在pClass中。

这是它给出的结果:

enter image description here

为什么ggplot将相同颜色的点连接在一起而不是彼此跟随的点(geom_line应该根据文件)。

如何绘制以下内容:

enter image description here

1 个答案:

答案 0 :(得分:6)

您应该在group = 1内使用aes()告诉ggplot实际上不同的颜色属于同一条线(即。群组)。

ggplot(data, aes(x = x, y = y, colour = factor(pClass), group = 1)) + 
  geom_line()

enter image description here