plotly / plotly/plotly.R

Sluggish performance when using add_annotations

Abierto
#1,747 0 comentarios 2 reacciones 0 asignados Ver en GitHub

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

Adding "add_annotations" to many points on any plot, cause slow performance.
Please see the below minimal example

library(shiny)
library(plotly)
library(quantmod)

ui <- fluidPage(
  plotlyOutput("plot"),
  verbatimTextOutput("event")
)

server <- function(input, output) {

  output$plot <- renderPlotly({
    getSymbols("AAPL",src='yahoo')

    # basic example of ohlc charts
    df <- data.frame(Date=index(AAPL),coredata(AAPL))
    df <- tail(df, 500)
    p <- df %>%
      plot_ly(x = ~Date, type="candlestick",
              open = ~AAPL.Open, close = ~AAPL.Close,
              high = ~AAPL.High, low = ~AAPL.Low) %>%
      add_annotations(x = ~Date , y = ~AAPL.Open, text = "Tslow",xref = "x", yref = "y", yref = "y",ax = -30, ay = 40,
                      arrowcolor = 'rgb(0, 153, 51)', arrowsize = 2, arrowwidth = 1, arrowhead = 4)  %>%
      layout(title = "Basic Candlestick Chart",xaxis = list(rangeslider = list(visible = F)))
    p
  })

  output$event <- renderPrint({
    d <- event_data("plotly_hover")
    if (is.null(d)) "Hover on a point!" else d
  })
}

shinyApp(ui, server)

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

Empieza ejecutando el ejemplo proporcionado de R Shiny con plotly, quantmod y 500 puntos de velas, y luego perfila la llamada add_annotations. El issue no menciona archivos fuente ni pruebas; se considera terminado cuando se haya identificado y abordado la causa del bajo rendimiento de las anotaciones sin romper el ejemplo.

Escrito por el modelo de indexación a partir del texto del issue.

Evaluación

Stack tecnológico
r
Área
data-visualization, performance
Tipo de issue
Error
Dificultad
4/5
Tiempo estimado
3-5 días
Estado de actividad
Estancado
Claridad
Necesita aclaración
Aptitud para principiantes
35/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.