plotly / plotly/plotly.R

size argument passed to annotations not respected?

Abierto
#745 1 comentario 0 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

bug enhancement
Lenguaje dominante
R
Estrellas
2.7k
Forks
641
Métricas de merge de PR
Sin PR fusionados en 30 d

Descripción

I understand this issue has a chance of being an off-topic implementation issue. If so, please accept my sincere apologies in advance. Frank Harrell reported he is unable to change size of the annotated text using the code below.

require(plotly)
p <- plot_ly()
p <- add_markers(p,x=~1:2, y=~1:2)
p <- add_annotations(p, x=~c(1.1, 2.1), y=~c(1.2, 2.4),
                     text=~c('XXX','YYY'), size=~c(7,20))
p

I was unable to account for size of text using the 'old' method using 'layout' (as discussed in #744).

ann <- data.frame(x = c(1.1, 2.1),
                  y = c(1.2, 2.4),
                  size = c(10, 20),
                  text = c("XXX", "YYY"))
xy <- data.frame(x = c(1, 2), y = c(1, 2))

a <- vector("list", nrow(ann))

for (i in 1:nrow(ann)) {
  a[[i]] <- list(
    x = ann$x[i],
    y = ann$y[i],
    text = ann$text[i],
    xref = "x", yref = "y",
    showarrow = TRUE,
    size = ann$size[i]
  )
}

plot_ly(xy, x = ~x, y = ~y) %>%
  add_markers() %>%
  layout(annotations = a)

@cpsievert suggested using add_annotations but I'm a bit lost on how to pass on the size argument. Based on the documentation and some examples scattered over the internet, I tried

plot_ly(xy, x = ~x, y = ~y) %>%
  add_markers() %>%
  add_annotations(text = ~text, font = list(size = ~size), data = ann)

with no luck. Is there something I'm doing wrong?

Guía de contribución

Abrir la guía de contribución

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Línea de trabajo

Comienza reproduciendo los ejemplos proporcionados de add_annotations, incluida la forma font = list(size = ~size) y el enfoque de layout anterior. Sigue el punto de entrada add_annotations para ver cómo se pasa el tamaño de la anotación y, a continuación, verifica que las anotaciones se rendericen con los tamaños por fila solicitados.

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
Estancado
Claridad
Bastante claro
Aptitud para principiantes
35/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.