plotly / plotly/plotly.R

`colors` argument to `add_trace` is ignored

Aberta
#1,699 3 comentários 1 reação 0 responsáveis Ver no GitHub

Ninguém assumiu esta issue ainda.

Linguagem predominante
R
Estrelas
2.7k
Forks
641
Métricas de merge de PRs
Nenhum PR com merge em 30d

Descrição

This code

library(plotly)

x <- seq(1, 10)
y <- x ^ 1.5
color <- c("a", "b", "c", "d", "e",
           "f", "g", "h", "i", "j")

plot_ly(type = "scatter", mode = "markers",
        x = x, y = y,
        color = color,
        colors = "Dark2",
        mode = "markers")

works as expected and produces the following plot:
plot1

This one:

library(plotly)

x <- seq(1, 10)
y <- x ^ 1.5
color <- c("a", "b", "c", "d", "e",
           "f", "g", "h", "i", "j")

plt <- plot_ly(type = "scatter", mode = "markers")
plt <- add_trace(plt, x = x, y = y,
                 color = color,
                 colors = "Dark2",
                 mode = "markers")
plt

generates the warning

Warning messages:
1: In RColorBrewer::brewer.pal(N, "Set2") :
  n too large, allowed maximum for palette Set2 is 8
Returning the palette you asked for with that many colors

2: In RColorBrewer::brewer.pal(N, "Set2") :
  n too large, allowed maximum for palette Set2 is 8
Returning the palette you asked for with that many colors

and produces the following plot:
plot2

The colors argument is ignored.

The same happens when specifying a custom colour palette with colorRampPalette from RColorBrewer:

library(RColorBrewer)
library(plotly)

x <- seq(1, 10)
y <- x ^ 1.5
color <- c("a", "b", "c", "d", "e",
           "f", "g", "h", "i", "j")
colors <- colorRampPalette(brewer.pal(8, "Dark2"))(10)

plt <- plot_ly(type = "scatter", mode = "markers")
plt <- add_trace(plt, x = x, y = y,
                 color = color,
                 colors = colors,
                 mode = "markers")
plt

As far as I can see, this makes it impossible to programmatically build a plot with add_trace and also choose the colour palette at the same time.

Guia de contribuição

Abrir o guia de contribuição

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Direção de pesquisa

Comece reproduzindo os dois exemplos de plot_ly e add_trace na issue e, em seguida, rastreie como o ponto de entrada add_trace trata color e colors. O trabalho estará concluído quando add_trace respeitar tanto a paleta nomeada quanto a saída personalizada de colorRampPalette, sem emitir o aviso de paleta relatado.

Escrita pelo modelo de indexação a partir do texto da issue.

Avaliação

Stack de tecnologia
r
Domínio
data-visualization
Tipo de issue
Bug
Dificuldade
3/5
Tempo estimado
1-2 dias
Status de atividade
Estagnada
Clareza
Razoavelmente clara
Facilidade para iniciantes
45/100

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.