В документации plotly
говорится, что можно связать представления без shiny
, используя crosstalk
.Вы не предоставили воспроизводимый пример, поэтому вот пример, использующий набор данных iris
.Вы можете попробовать:
library(plotly)
library(crosstalk)
library(DT)
sd <- SharedData$new(iris)
a <- plot_ly(sd, x = ~Sepal.Width, y = ~Petal.Width) %>%
add_markers(alpha = 0.5) %>%
highlight("plotly_selected", dynamic = TRUE)
options(persistent = TRUE)
p <- datatable(sd)
bscols(widths = c(6, 4), a, p)
plotly
имеет в версии для разработки table
, но я не мог понять, как использовать его с примером выше.DT
было проще, но вы могли бы заставить его работать.Надеюсь, это поможет.
РЕДАКТИРОВАТЬ: С ggplotly
, вы можете попробовать это:
d <- highlight_unit(iris)
a <- ggplotly(ggplot(data = d, aes(x = Sepal.Width, y = Petal.Width)) + geom_point()) %>%
highlight("plotly_selected", dynamic = TRUE)
options(persistent = TRUE)
p <- datatable(d)
bscols(widths = c(6, 4), a, p)