This is a simple but powerful dashboard built with Streamlit and Plotly to explore bike usage data in London.
You can filter by location and date, and see different visualizations that help make sense of the numbers.
We take a bunch of CSV files (with cycle counts), clean them up, store them in a small SQLite database, and show everything on a web dashboard!
Make sure you have Python 3. Then open terminal and run:
pip install streamlit pandas plotlyDrop all the .csv files into the data/ folder.
Run this script to clean and save everything into a local SQLite database:
python scripts/load_to_sqlite.pyIt will create a file called cycleways.db in the data/ folder.
Now launch the Streamlit app:
streamlit run scripts/main.pyIt will open in your browser automatically 🎉
Here’s what the dashboard shows and what each chart does:
See a live table of the data based on your filters (location + date).
Line chart that shows how bike usage changes day by day. Great for spotting trends like peaks during weekdays or dips on rainy days.
fig = px.line(daily, x="date", y="count", title="Daily Total Bike Count")Pie chart showing how bikes are moving: inbound, outbound, or both. Helps understand traffic flow.
fig = px.pie(dir_data, names="Direction", values="Count")Bar chart showing how many bikes were private vs. rental. (Useful for city planning or bike sharing analysis.)
fig = px.bar(mode_counts, x="Mode", y="Total Bikes")- We use pandas to read and clean the CSV files.
- We save the cleaned data into SQLite (a mini database stored as a file).
- Then we build interactive charts using Plotly inside a Streamlit app.
- You can pick locations and dates using the sidebar, and the charts update live!
Built with ❤️ by Albert Just having fun with data and making dashboards more fun to explore!
