Bi-directional Plotly Component

Hey folks!

I needed plot interactivity for a project, so I’ve put together a simple component that sends Plotly events back to Streamlit! Obviously this repo is pretty early-on, but I thought I’d make a post about it.

Currently you can configure the component to send back click, select, and hover events for plotly. Some of the features I hope to implement are:

  • Automatic layer generation to change the cursor to a pointer (to help indicate it’s clickable) (
  • State stuff so select operations don’t cause the plot to reset
  • And more!

Anyways, I’m not much of a frontend developer, so if anyone want’s to help out, you’re welcome to!

Happy coding :slight_smile:


Welcome @null-jones to the community and thanks for the amazing contribution :slight_smile: :slight_smile: . Hopefully we’ll be able to help you test it and fix the small edge cases.
Also it’s awesome to see we don’t need to be too much of a frontend developer to actually build components (my only frontend experience is also building those Streamlit components ahah)


Great job! Always waiting for such a component! And hope it will support zoom event and can get range of different axis as a returned value.