DEV Community

DAVID JORDAN ANAMPA PANCCA
DAVID JORDAN ANAMPA PANCCA

Posted on

Exploring Alternative Visualization Tools: Streamlit, Dash, and Bokeh

In recent months, I’ve been experimenting with lightweight tools for building dashboards and interactive visual reports. Instead of relying only on traditional BI platforms, I realized that Python-based frameworks like Streamlit, Dash, and Bokeh offer a faster and more flexible way to create and share data applications.

This article gives a clear explanation of each tool, includes a simple example, and shows how to deploy it to the cloud.

Streamlit

Streamlit is one of the simplest tools for creating data applications. It feels like writing a regular Python script, but the output becomes a functional and interactive web app.

Advantages:

  • No need for HTML, CSS, or JavaScript
  • Very fast prototyping
  • Auto-refresh on save
  • Works perfectly with data science workflows

Limitation:
Customization is more limited compared to a full web framework.

Dash

Dash, built by Plotly, is more structured and powerful, especially for complex dashboards.

Advantages:

  • Production-focused
  • Highly customizable layouts
  • Interactive visualizations using Plotly
  • Good for enterprise-grade dashboards

It requires more configuration due to its callback system, but it offers deeper control.

Bokeh

Bokeh is centered around interactive visualizations rendered directly in the browser. It gives you more detailed control over graphical elements.

Advantages:

  • High interactivity
  • Can run on a Bokeh Server
  • Integrates well with NumPy and Pandas
  • Produces JavaScript-level visualizations without writing JS

Perfect for scientific and research dashboards.

Example: Simple Dashboard Using Streamlit

Below is a straightforward Streamlit example that generates a line chart.

import streamlit as st
import pandas as pd
import numpy as np

st.title("Simple Dashboard Example")

data = pd.DataFrame({
    "values": np.random.randn(50).cumsum()
})

st.line_chart(data)
Enter fullscreen mode Exit fullscreen mode

Run it locally:

pip install streamlit
streamlit run app.py
Enter fullscreen mode Exit fullscreen mode

dashboard will open at:
http://localhost:8501

Deploying to the Cloud

One of the best parts of using Streamlit is how simple it is to deploy a dashboard online.

You can deploy for free using Streamlit Community Cloud.

Steps:

  1. Upload your project to GitHub
  2. Go to: https://streamlit.io/cloud
  3. Click Deploy an app
  4. Select your repository and the app.py file
  5. Deploy

In a few seconds, you will have a public URL to share your app.

Other services you can use for deployment:

  • Render
  • Railway
  • Fly.io
  • AWS / Azure / Google Cloud

All of them support Python-based web apps.

Conclusion

Tools like Streamlit, Dash, and Bokeh offer powerful alternatives to heavy BI systems. They allow you to create dashboards quickly, write minimal code, and deploy them easily to the cloud.

If you're working on data analytics, machine learning demos, or internal dashboards, these tools are excellent options to explore.

Top comments (0)