Как обновить график на основе пылесоса из другого графика в DashR? - PullRequest
0 голосов
/ 23 марта 2020

Я пытаюсь создать панель управления, на которой я наведите курсор (или, что лучше, нажмите) на гистограмму (graph1), и она обновит гистограмму в graph2. Я не уверен насчет синтаксиса, так как все учебники только для Python, и для R. ничего не существует. Теперь мне нужно добавить hoverData= или clickData в dccGraph, но я не уверен, какой список нужен для go в. Кроме того, я думаю, я знаю, как выглядит обратный вызов, но я не уверен, как писать функции. Вот что я попробовал:

graph1 <-ggplotly( ggplot(data_histogram, aes(x = cyl, y = mean_mpg)) +
    geom_bar(stat = "identity"))
graph2 <- ggplotly(ggplot(mtcars, aes(x = factor(gear))) +
    geom_bar())

app <- Dash$new()
app$layout(
  htmlDiv(
    list(
      dccGraph(id='Histogram', figure = graph1, hoverData= ???),
      dccGraph(id='Boxplot', figure = graph2)
    )
  )
)

app$callback(
  #update figure of gap-graph
  output=list(id = 'Boxplot', property='figure'),
  #based on values of year, continent, y-axis components
  params=list(input(id = 'Histogram', property='hoverData')),
  #this translates your list of params into function arguments
  function(hoverData) {
    # what function should i write here make_plot2()?
  })

## Run app
app$run_server(debug=TRUE)
...