add_trace: control the color

帅比萌擦擦* 提交于 2019-12-11 01:32:38

问题


I have a plot where I have first trace in gray that will be overplotted by other traces in colors. My issue is that in plotly-version 4.7.1. as well as in version 4.8.0. I can't adjust the color.

One year ago this code would work:

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) 

Sadly I do not have that machine anymore. But it seems that there were changes made to plotly since then. I also tried using the color argument instead of split and used colors instead of the line-list to specify the colors. It didn't have any impact. I still get this plot:

What am I missing here? How can I make it work?


回答1:


See this issue.

This works if you use color instead of split and if you set the colors in the plot_ly function at the beginning, with the argument 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) 


来源:https://stackoverflow.com/questions/52179471/add-trace-control-the-color

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!