Линейный график, который меняет цвет с течением времени - PullRequest
3 голосов
/ 21 октября 2011

У меня есть фрейм данных, который содержит x и y координаты для случайного блуждания, которое движется дискретными шагами (1 шаг вверх, вниз, влево или вправо).Я хотел бы построить путь --- точки, соединенные линией.Это легко, конечно.Сложность в том, что путь пересекает сам себя и становится трудно интерпретировать.Я добавляю джиттер к точкам, чтобы избежать наложения, но это не помогает различать порядок обхода.

Я хотел бы соединить точки, используя линию, которая меняет цвет с течением времени (шаги)в соответствии с термометром цветовой шкалы.

Мой случайный обход хранится в отдельном классе, и я пишу для него специальный метод plot, поэтому, если у вас есть предложения, как я могу сделать это, используя plot, это было бы здорово.Спасибо!

Ответы [ 3 ]

5 голосов
/ 21 октября 2011

Это довольно легко сделать в ggplot2:

so <- data.frame(x = 1:10,y = 1:10,col = 1:10)
ggplot(so,aes(x = x, y = y)) + 
    geom_line(aes(group = 1,colour = col))

enter image description here

4 голосов
/ 21 октября 2011

Если вы предпочитаете не использовать ggplot, ?segments будет делать то, что вы хотите. - Я предполагаю, что x и y являются функциями времени, как подразумевается в вашем примере.

1 голос
/ 21 октября 2011

Если вы используете ggplot, вы можете установить эстетику цвета:

library(ggplot2)
walk <-cumsum(rnorm(n=100, mean=0)) 
dat <- data.frame(x = seq_len(length(walk)), y = walk)
ggplot(dat, aes(x,y, colour = x)) + geom_line()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...