Maps, Apps & Dashboards

Let the reader ask their own question — within a budget.

The dashboards path, from when an app beats a map image to linked map-and-chart selection. let the reader ask their own question — within a budget1when an app winsand when it does not2a map, with widgetsStreamlit, Dash, Panel3reruns & statewhy it redraws4the browser budgeta million pointsReruns come before scale because caching is what makes the scale question answerable at all

An app is the right deliverable when the answer depends on a choice only the reader can make: which year, which region, which threshold. It is the wrong one when a PNG would have done, because every interaction now runs your code again on a machine you do not own. These guides cover choosing a framework, wiring widgets to a map, caching so a rerun is not a re-read, rendering a million points without freezing a laptop, and the failures that only show up with real users on real data.

The reruns-and-state guide is the one that makes the rest possible. A framework that re-executes the whole script on every click is fine until something expensive is in the script, and caching is what turns "unusable above ten thousand rows" into "a million points on a GPU".

The full path, in order

The concepts underneath the work, then each task, then the errors that task produces. Work down, or jump to the step you need.

  1. Streamlit, Dash or Panel: Choosing a Framework for a Map App python map app framework 🧭 Concept
  2. How to Build a Streamlit App with an Interactive Map streamlit map app python ⚙️ How-To
  3. How to Add Filters and Widgets That Drive a Map map app filters widgets ⚙️ How-To
  4. Reruns and State Explained: Why Your Map App Redraws Everything streamlit rerun model session state 🧭 Concept
  5. How to Cache Spatial Data in a Map App cache spatial data streamlit ⚙️ How-To
  6. What a Map App Can Afford to Send to the Browser map app performance budget 🧭 Concept
  7. How to Render a Million Points in a Map App with pydeck pydeck million points ⚙️ How-To
  8. How to Let Users Draw an Area of Interest in a Map App draw area of interest map app ⚙️ How-To
  9. How to Add a Download Button for Filtered Spatial Data download button spatial data app ⚙️ How-To
  10. How to Link a Map and a Chart So One Selection Drives Both link map and chart app ⚙️ How-To
  11. Notebook, App or Report: Choosing How to Ship an Analysis notebook app or report 🧭 Concept
  12. How to Deploy a Python Map App with Docker deploy streamlit app docker ⚙️ How-To
  13. How to Test a Map App Without a Browser test streamlit map app ⚙️ How-To
  14. Sharing a Map App: Public, Private and In Between share map app access control 🧭 Concept
  15. Fixing a Map App That Takes Ten Seconds to Load map app slow to load 🔧 Fix
  16. Fixing a Map That Resets or Disappears on Every Interaction streamlit map resets rerun 🔧 Fix
  17. Fixing an App Whose Memory Grows With Every User streamlit app memory grows 🔧 Fix
  18. Fixing Blank or Grey Tiles in an Embedded Map blank grey tiles map app 🔧 Fix
  19. Fixing an Uploaded File That Breaks a Map App uploaded file breaks map app 🔧 Fix

Topics this path covers

A path is a route; a topic is everything the site has on a subject. Open a topic to see the guides this path skips.

Other ways in