Я хотел бы построить набор точек, связанных с одним контуром, как на первом рисунке ниже, но с цветом, установленным тем, увеличивается или уменьшается X, используя adf$up
флаг, как на втором участке.Цвет пути ggplot2, получая несколько путей, когда нужен только один
Однако, когда я пытаюсь объединить два, как в третьем графике, я получаю два отдельных пути, а не один путь через все точки.
# hysteresis plotting in ggplot2
library(ggplot2)
set.seed(123)
N <- 20
adf <- data.frame(X=rnorm(N), Y=rnorm(N))
adf$up <- c(FALSE, diff(adf$X)>0)
qplot(X, Y, data=adf, geom=c('point', 'path')) # plot 1
qplot(X, Y, data=adf, col=up, geom='point') # plot 2
qplot(X, Y, data=adf, col=up, geom=c('point', 'path')) # plot 3
Я почти получить то, что я хочу, используя реальное значение цвета, как и в сюжете 4 - но я бы предпочел бинарный цвет.
adf$diff <- c(0, diff(adf$X))
qplot(X, Y, data=adf, col=diff, geom=c('point', 'path')) # plot 4
Как получить двоичный цвет adf$up
на пути?
Отличный @CathG, это точно! FYI Я могу сказать 'adf $ diff2 <- sign (adf $ diff)', чтобы получить -1/0/+ 1. – Sean
@Sean, спасибо за подсказку, я отредактировал свой ответ, чтобы изменить «создание» diff2. (На самом деле, я знал эту функцию, я не знаю, почему я не думал использовать ее ...) – Cath