Отвечая на ваш комментарий. Иногда я испытываю настоящую боль с Плотли. Такого рода работы, но легенда беспорядок, и нужно будет немного поработать.
Задача состоит в создании нескольких цветных линий из одной серии. Я не думаю, что Plotly обрабатывает их изначально (хотелось бы увидеть лучший пример). Поэтому я только что сделал это. Вы можете получить что-то более элегантное с опцией group=
.
Я добавил 4-е значение, поскольку оно лучше показывает результат.
edit: у меня настоящая болевая точка с цветом "а". Если вы посмотрите на первый р, он зеленый. После цикла оно становится коричневым. Вот почему я добавил «линии + маркеры» вместо «маркеры». Кто-то будет знать, как улучшить это, но это еще одна боль Plotly
library(plotly)
library(RColorBrewer)
dat <- data.frame(x1=c(1,2,3,4), y1=c(1,2,3,4), mycolor=c('a','b','c','d'),
x2=c(1,2,3,NA), y2=c(1,2,3,NA),
stringsAsFactors = FALSE)
colours <- brewer.pal(length(unique(dat$mycolor)), "Dark2")
p <- plot_ly(data=dat, x=~x1, y=~y1, colors=colours) %>%
add_trace(mode='markers', color=~mycolor, data=dat,
x=~x1, y=~y1)
p
N <- nrow(dat)-1
for(i in 1:N){
p <- p %>% add_trace(data=dat[i:(i+1),], x=~x2, y=~y2, mode='lines+markers',
type="scatter", color=colours[i],
inherit=FALSE)
}
p