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
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) (https://codepen.io/destrada/pen/perVON)
- 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!
Welcome @null-jones to the community and thanks for the amazing contribution . 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.
Hi @null-jones and thanks for the Plotly component. I was looking exactly for this type of functionality for a demo based in streamlit I working on. I’m having however an issue when using it. I using @andfanilo example to test it but unfortunately lasso selection is not working. Only single point selection.
streamlit version 1.15.1, with
python 3.10, and
streamlit_plotly_events directly from pip install
Any help would welcome. Thanks!
So, I just realised I was not using the lasso itself (only the default lasso from the initial visualization).
Sorry about that and thanks anyway.
Writing about a problem to others really is half the solving have a nice day!
is it possible to update the plot automaticallt after a click event ?