Thematic Dashboard
Build interactive dashboards with maps and charts
What Is a Thematic GIS Dashboard?
A thematic GIS dashboard is an interactive single-page interface that combines a map view, attribute tables, charts and KPI cards driven by the same underlying spatial dataset. Click a polygon and the chart filters to its data; brush a chart and the matching features highlight on the map; change a filter and every panel updates in lockstep. Dashboards are how non-GIS stakeholders consume spatial data, and they are now a standard deliverable for analysts working with planners, executives, journalists and the public.
The Thematic Dashboard tool on gis.tools lets you build a dashboard from a single GeoJSON layer in the browser. People search for "gis dashboard", "interactive map dashboard", "spatial dashboard builder", "geojson dashboard" and "map dashboard tool" because tools like ArcGIS Dashboards, Mapbox Studio, Tableau and Power BI cost money or require accounts, and a free, no-install browser builder fills the gap for one-off projects, classroom demos and community advocacy work.
A dashboard is more than a map. It is a coordinated multi-view visualisation in which every component reacts to selection and filtering. Done well, a dashboard turns a static dataset into an exploration tool that surfaces patterns nobody would have spotted in the raw data.
How a Dashboard Works
The core architecture has three layers: the data layer (a GeoJSON FeatureCollection), the visual components (map, chart, table, KPI cards) and the interaction system (cross-filtering between components).
Data Binding
Each visual component subscribes to the same FeatureCollection. When a feature is selected or filtered out, every component receives the update and re-renders with the new active set.
Cross-Filtering
A click on a feature in the map triggers a selection event. The chart filters to that feature; the table scrolls to its row; the KPI cards recompute over the selection. This brushing-and-linking pattern is the foundation of every modern interactive data visualisation.
Filter Controls
Sliders, dropdowns and checkboxes attached to specific attributes drive the active set. A "year" slider over a multi-year dataset filters which features are visible; a "category" dropdown restricts to one class.
Layout
A responsive grid arranges the components on the page. Drag-and-drop layouts let you place the map full-width, with charts and KPIs flanking, or compose multi-row dashboards for narrative storytelling.
Export and Sharing
Saved dashboards serialise to a JSON state file (containing the layout, filters and component config). Combined with the GIS Notebook state file, you have a complete reproducible spatial analysis project.
Key Parameters and Options
Source Layer
A single GeoJSON FeatureCollection. The attributes drive every chart, filter and KPI in the dashboard.
Map Component
A Leaflet/MapLibre map showing the source layer. Style the features with Categorical Styling or Graduated Styling.
Chart Components
Bar, line, pie, histogram and scatter charts bound to one or two attributes. Use bar charts for categorical breakdowns, histograms for distributions, scatter plots for two-attribute relationships.
KPI Cards
Single-number summaries (count, sum, mean, max) of an attribute over the active feature set. Update live as filters change.
Filter Controls
Range sliders for numeric fields, dropdowns for categorical fields, search boxes for text fields. Each filter narrows the active set.
Cross-Highlight Mode
Choose whether selecting in one component filters or merely highlights in others. Filtering hides non-matching features; highlighting just emphasises the selection.
Practical Applications
Municipal Open Data Portals
A city publishes a 311 service request dataset and needs a public-facing dashboard so residents can filter by neighbourhood, complaint type and date. The dashboard shows a map of pins, a category bar chart and KPI cards for total volume, average response time and oldest open ticket.
Public Health Reporting
An epidemiologist builds a dashboard from a county-level COVID case dataset. Filters let users select a date range and a metric (cases per 100k, hospitalisations, vaccinations); the map shades counties by the selected metric and the chart shows the time-series trend for the active selection.
Real Estate Market Analytics
A property analyst loads recent sales as a point layer and builds a dashboard with price-per-square-foot KPIs, a histogram of sale prices, a scatter of price vs days-on-market and a map filtered by neighbourhood polygon click.
Conservation NGO Reporting
A conservation organisation maintains a dataset of monitored species observations and builds a dashboard that lets donors explore where, when and what was seen. Filters drive a map of observations and a bar chart of species frequency.
Election Results Visualisation
A journalist publishes county-level election results with a dashboard letting readers compare turnout, margin and demographic correlates. Brushing a county zooms the map and updates the comparison charts.
Agricultural Cooperative Field Performance
An ag co-op aggregates per-field NDVI, yield and input data into one dashboard so member farms can benchmark themselves against the cooperative average.
Transportation Planning
A transit agency builds a dashboard of bus route performance: ridership KPIs, on-time chart, route map filtered by line. Used in council briefings and stakeholder workshops.
Step-by-Step Workflow in gis.tools
- Open the Thematic Dashboard page on gis.tools.
- Drag a GeoJSON layer into the page. The features become the data source for every component.
- Add a map component and style it using Categorical Styling or Graduated Styling.
- Add chart components: bar, line, pie, histogram, scatter β each bound to one or two attributes.
- Add KPI cards for headline numbers (count, sum, mean of an attribute).
- Add filter controls for the attributes that should drive cross-filtering.
- Arrange the components in a responsive grid layout.
- Test the cross-filtering: click features in the map, brush charts, change filters and confirm that every panel updates correctly.
- Save the dashboard state as a JSON file via the GIS Notebook for sharing or future editing.
- Export a static screenshot or share the dashboard URL with embedded state.
Worked Example: A 311 Service Request Dashboard
You have a one-month export of 311 service requests for a mid-size US city β a GeoJSON layer with 12000 point features and attributes for category, neighborhood, date, days_open and resolved status. You drop the layer into the Dashboard Builder. You add a map component coloured by category, a bar chart of count-by-category, a histogram of days_open, KPI cards for total requests, average days_open and percent resolved, and dropdown filters for category and neighborhood. After arranging the components you click Save. You select "potholes" from the category filter and watch the map shrink to 2400 pothole reports, the histogram shift toward longer resolution times, the KPI cards update to "average 9 days" and the bar chart highlight the top three neighborhoods by volume. The mayor's office uses the dashboard in their next briefing.
Common Pitfalls and Gotchas
- A dashboard with too many components becomes noisy and slow. Five to seven components is a good maximum.
- Filters that overlap in semantics confuse users (e.g. two different category dropdowns).
- Cross-filtering on a very large dataset can lag β keep the source layer under tens of thousands of features for smooth interaction.
- Choosing the wrong chart type for a question buries the insight; bar charts for categories, histograms for distributions, scatter for relationships.
- KPI cards that recompute over the entire dataset rather than the active filter mislead stakeholders.
- Custom colour schemes must be colourblind-friendly and consistent across components.
- A dashboard built on volatile data needs a refresh strategy β note the data date.
- Embedding the dashboard publicly requires care if the underlying data is sensitive or licensed.
Tips for Best Results
- Start by writing the questions the dashboard must answer; design components to answer them.
- Keep the layout simple β one map plus 3-5 supporting components is usually plenty.
- Use consistent colour mapping across the map and the charts so readers can mentally connect them.
- Pre-filter the source layer to remove irrelevant features before loading.
- Use clear, plain-language labels for filters and KPIs.
- Test the dashboard on a slow connection and a tablet to check responsiveness.
- Include a brief title, subtitle and data attribution panel.
- Save versions of the dashboard state file for reproducibility.
Comparison with Other GIS Approaches
ArcGIS Dashboards, Mapbox Studio, Tableau, Power BI and Kepler.gl all let you build map dashboards. Each has trade-offs: cost, account requirements, learning curve, vendor lock-in. The Thematic Dashboard on gis.tools is free, requires no account, runs entirely in your browser and produces a serialisable JSON state file you can share. The trade-off is that it cannot match the polish and features of enterprise tools, and it works best for moderate-size datasets.
Performance Considerations
The dashboard runs everything in the browser tab. Cross-filtering performance is dominated by the source layer's feature count. Up to about 50000 features are smooth on modern hardware; larger layers should be aggregated or simplified with GeoJSON Simplifier first. Charts re-render on each filter change, so a busy dashboard with many components feels slower than a sparse one.
Data Privacy and Browser-Based Processing
The source layer stays in the browser. Filters, selections and chart computations all run client-side. No data is uploaded; the dashboard state file is generated locally and only leaves your machine if you choose to share it. This matters for sensitive municipal data, internal reporting, classified analyses and any workflow with data residency rules.
Related GIS Concepts
Brushing and Linking: The interaction pattern where selecting in one view updates all the others. Foundational to multi-view data visualisation since the 1970s.
KPI (Key Performance Indicator): A headline metric summarising performance. Dashboards usually feature 3-6 KPI cards prominently.
Cross-Filter: A filter that flows from one component to all others.
Story Map: A narrative-driven dashboard that walks the user through a sequence of slides. See the Story Map Generator.
Drill-Down: The pattern of clicking a high-level summary to reveal underlying detail. Standard in BI dashboards.
Frequently Asked Questions
Can I add multiple layers to one dashboard?
The current builder is single-layer. For multi-layer dashboards combine layers first using Spatial Join or merge attributes via the Join Tool (CSV β Layer).
Can I save and share my dashboard?
Yes β save the dashboard state to a JSON file using the GIS Notebook. Anyone with the file can reload the dashboard locally.
What chart types are supported?
Bar, line, pie, histogram and scatter. Each bound to one or two attributes.
How big a dataset can the dashboard handle?
Up to tens of thousands of features for smooth cross-filtering. Larger layers should be aggregated.
Does cross-filtering work both ways?
Yes β selecting in the map filters the charts and table, and brushing a chart highlights features in the map.
Can I embed the dashboard on my website?
A static screenshot export works for documents. Live embedding is on the roadmap.
Related Tools on gis.tools
Related Tools
View All ToolsVector Change Detector
Compare two GeoJSON layers to find differences
AnalysisCatchment Analysis
Analyze service areas with buffers or isochrones
AnalysisOrigin-Destination Matrix
Calculate distances between all point pairs
AnalysisCoverage Gap Finder
Identify areas not covered by service radii
AnalysisGIS Notebook
Save your project state to a single JSON file
AnalysisTime Slider Animator
Animate temporal data with playback controls
Analysis100% client-side processing - your data stays private and never leaves your device