add_trace: контролировать цвет - PullRequest
       40

add_trace: контролировать цвет

0 голосов
/ 05 сентября 2018

У меня есть график, на котором у меня есть первый след в сером цвете, который будет перекрыт другими следами в цветах. Моя проблема в том, что в plotly -version 4.7.1. а также в версии 4.8.0. Я не могу настроить цвет.

Год назад этот код работал бы:

mysim=data.frame(x=rep(1:4,4),y=rbinom(16,10,0.5),id=rep(1:4,each=4))

my_colors<-c(             ## add the standard plotly colors
        '#1f77b4',  #// muted blue
         '#ff7f0e',  #// safety orange
         '#2ca02c',  #// cooked asparagus green
         '#d62728'  #// brick red
             ) 


plot_ly() %>%
 add_trace(x=1:4,y=rbinom(4,10,0.4),type='scatter',mode='lines',
            line=list(color='#CCCCCC',dash='dashed'),hoverinfo='skip',opacity=0.25) %>% 
  add_trace(data=mysim,x=~x,y=~y,type='scatter',mode='lines', split=~as.factor(id),
            line=list(color=my_colors),hoverinfo='skip',opacity=1) 

К сожалению, у меня больше нет этой машины. Но, похоже, с тех пор в plotly были внесены изменения. Я также попытался использовать аргумент color вместо split и использовал colors вместо line -list для задания цветов. Это не имело никакого влияния. Я все еще получаю этот участок: enter image description here

Что мне здесь не хватает? Как я могу заставить это работать?

1 Ответ

0 голосов
/ 05 сентября 2018

См. этот выпуск .

Это работает, если вы используете color вместо split и если вы устанавливаете цвета в функции plot_ly в начале, с аргументом colors:

plot_ly(colors=my_colors) %>%
  add_trace(x=1:4,y=rbinom(4,10,0.4),type='scatter',mode='lines', line=list(color='rgb(0,0,255)',dash='dashed'),hoverinfo='skip',opacity=0.25) %>% 
  add_trace(data=mysim,x=~x,y=~y,type='scatter',mode='lines', color=~as.factor(id),
            hoverinfo='skip',opacity=1) 
...