Data gets dropped in add_trace and consequently points have the wrong color if NA is present
Abierto
Nadie ha tomado este issue todavía.
- Lenguaje dominante
- R
- Estrellas
- 2.7k
- Forks
- 641
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Descripción
Have a look at the following code:
library(plotly)
x = c(NA, 2, 3, 4, 5)
color = c(0, 0, 0.5, 1, 1)
# If you try to plot it this way, you get mismatched colors. The NA seems to have been silently dropped and then the wrong indices aligned. The colors of points 2 and 3 are now blue, of 4 is purple and of 5 is green.
plotly::plot_ly()|>
plotly::add_trace(
type = "scatter",
mode = "markers",
x = x,
y = 0,
marker = list(
color = color,
cmin = 0,
cmax = 1,
colorscale = list(list(0, "blue"), list(0.5, "purple"), list(1, "green"))
)
) |>
plotly::layout(
showlegend = FALSE
) |>
plotly::hide_colorbar()
It produces a plot with wrong colors:
I think this is unacceptable behavior, especially since this is not what happens if you do it in the what I consider the classical way:
data.frame(x=x, color=color) |>
plot_ly(x=~x, color=~color, y=0, colors = c("blue", "purple", "green")) |>
hide_colorbar()
Guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Línea de trabajo
Ejecute el ejemplo proporcionado de R mediante plotly::add_trace y compare los colores de los marcadores con el ejemplo de data.frame. Rastree cómo add_trace gestiona los valores NA en x y alinea el vector de colores de los marcadores; después, añada cobertura de regresión que demuestre que los puntos que no son NA conservan sus colores correspondientes.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- r
- Área
- data-visualization
- Tipo de issue
- Error
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Estado de actividad
- Tranquilo
- Claridad
- Bien especificado
- Aptitud para principiantes
- 72/100