Heres an example using plotly and DT. For more plotly-based examples of 'linking views client-side', see -- https://plotly-book.cpsievert.me/linking-views-without-shiny.html
library(plotly)
library(crosstalk)
# `highlight_key()` is essentially the same as using `SharedData$new()`
tx <- highlight_key(txhousing, ~city)
p <- plot_ly(tx) %>%
group_by(city) %>%
add_lines(x = ~date, y = ~median)
bscols(p, DT::datatable(tx))