Bokeh can provide layouts, tabs, advanced tables and JS Callbacks in Streamlit!

After studying Panel and Bokeh for a couple of weeks I thought I would try out using Bokeh in Streamlit to create som Bokeh plots via st.bokeh_chart.

What I found surprised me. It turns out you can in fact use Bokeh plotting, layouts, some widgets like tables and tabs and JS Calbacks!.

And even more thought provoking. I think the Bokeh server can integrate well with Streamlit to get advanced Python Callbacks as well. And even more thought provoking. I think we could actually get Panel integrated as well! I just haven’t figured out how to do it yet :slight_smile:

Whether it’s a good thing I’ve discovered or it’s Pandoras Box I’ve opened I don’t yet know. What do you think?

Check out the example and code in the Gallery at

FYI. @pybokeh, @Adrien_Treuille, @thiago


Just played with this @Marc. This is super interesting, and yes, awesome! :slight_smile:


Please could you provide source code for this application? Or teach me how you do that, was amazing this tabs feature, wish it exists in streamlit itself and i wish to use that tab application.
i tried but doesn’t open here, i think the website has a problem.

1 Like

@matthewsjones, all the codes are included on the awesome-streamlit site. try using instead. It only works for me if I include https in the url.


omg thank you, the http tip worked here too :wink:


Sir, can you pls provide our code that you have written. Because your app looks pretty nice, i want to explore the code and how you have written.
Thanks :slight_smile: :blush:

Hi @Ashdeep_Singh

You can find the code at :+1:

1 Like

@Marc panel integration with streamlit would be extremely useful, the most relevant example is in displaying large raster datasets. Holoviz/Datashader (with panel for live interactions) are best in class for this use case but it really requires to the client/server interactivity for it to work in a meaningful way.

In the meantime using bokeh to expand the layout capabilities of streamlit is genius

Unfortunately, example on Streamlit and Bokeh integration is now missing in project. Does anybody know any other examples?

It is not. In Navigation select Gallery, then in Select the App choose Bokeh Experiments.

@Goyo , thank you, haven’t noticed proper dropdown from the start.

@Marc Would you have a big picture in mind of the different client-side in-browser rendering solutions for charts / plots? Overview of the different interactive plot renderers in the browser (Javascript)