Hexbin Map
A map divided into hexagonal bins that aggregate and color-code point data within each cell — turning scattered dots into a clean, uniform heatmap of spatial density.
// 01 — The chart
What it looks like
A hexbin map showing event density. Each hexagonal cell aggregates nearby data points and is color-coded by count — darker hexes indicate more events.
// 02 — Definition
What is a hexbin map?
A hexbin map (hexagonal binning map) overlays a regular grid of hexagons onto a geographic area, counts or aggregates the data points falling within each hexagon, and then colors each cell according to its aggregated value. It transforms a cloud of individual points into a uniform, readable density surface.
Hexagons are preferred over squares because they tessellate with uniform adjacency — each hex has exactly six neighbors, all at the same distance from its center. Square grids have diagonal neighbors at a different distance, which introduces visual bias. Hexagons also approximate circles better, reducing distortion when binning point data.
The key design parameter is hex size. Large hexagons create a coarse, generalized view; small hexagons preserve more spatial detail but may look noisy if data is sparse. The goal is to find the resolution where patterns are visible but individual hexes still contain enough points to be statistically meaningful.
Why hexagons? Mathematician Karl Weissenberg noted that hexagons are the most efficient shape for covering a plane with equal-area tiles. Bees discovered this long before data scientists did — honeycombs use hexagonal cells for the same reason: maximum coverage with minimum material.
// 03 — Anatomy
Parts of a hexbin map
// 04 — Usage
When to use it — and when not to
- You have thousands or millions of point-level observations that overlap when plotted directly
- You want to show spatial density without arbitrary political boundaries
- Your data is not tied to predefined regions (unlike choropleth data)
- You need a uniform grid that avoids the visual bias of square bins
- Revealing hotspots, clusters, and gradients in event or sensor data
- Comparing density patterns across time periods using the same hex grid
- Your data is already tied to administrative boundaries — use a choropleth instead
- You have very few data points that don’t need aggregation
- Exact point locations matter more than density patterns
- Your audience is unfamiliar with hex grids and might be confused by the tessellation
- You need to show continuous surfaces — use an isarithmic (contour) map
- A simple heatmap would communicate the same insight more intuitively
// 05 — Reading guide
How to read a hexbin map
Follow these steps whenever you encounter a hexbin map.
Read the legend and understand the color scale
Each hex’s color maps to a count or aggregated value. Is the scale linear or logarithmic? What are the min and max values? Without the legend, you can’t distinguish “moderately high” from “extremely high.”
Find the darkest hexagons
These are your density hotspots — the areas with the most data points. They’re the primary story the map is telling.
Look for spatial gradients
Does density drop off gradually from the center, or are there sharp boundaries? Gradients suggest a continuous process (like population spreading from a city center); sharp edges suggest barriers or thresholds.
Consider the hex size
Are the hexagons large enough to be statistically stable, or so small that individual hexes might contain just one or two points? Small hexes amplify noise; large hexes hide local variation.
Compare to geography
Overlay the hex pattern with your knowledge of the area. Do hotspots correspond to cities, roads, or natural features? Does the pattern match your expectations, or does it reveal something surprising?
// 06 — Pitfalls
Common mistakes
×Hex size too large, hiding local patterns
Fix: Start with a size that shows meaningful spatial variation. If the entire map is one shade, your hexes are too big. Decrease size until patterns emerge, but stop before noise dominates.
×Hex size too small, amplifying noise
Fix: If many hexes have zero or one data point, they’re too small. Increase hex size until each cell contains enough points to be statistically stable.
×Using a linear color scale for skewed data
Fix: If a few hexes have extremely high counts, a linear scale will wash out all other hexes into the lightest shade. Use a logarithmic or quantile scale to spread colors more evenly.
×Ignoring the modifiable areal unit problem
Fix: Shifting the hex grid by even a few pixels can change which points fall into which hex. Be transparent about grid placement and test that patterns are robust to small shifts.
×No geographic context
Fix: Hexes floating in white space are meaningless. Always include enough basemap (roads, boundaries, water) so readers can connect hex colors to real locations.
// 07 — In the wild
Real-world examples
Uber pickup density
Uber and Kepler.gl use hexbin maps to visualize millions of ride pickups across cities. The hex grid aggregates GPS points into a clean density surface that reveals demand hotspots by hour, day, and neighborhood.
Crime incident mapping
Police departments overlay hexbin grids on crime report locations. The result shows patrol-zone-level density without leaking exact addresses, balancing public transparency with privacy.
Species observation records
Biodiversity platforms like GBIF use hexbin maps to show where species have been observed worldwide. With billions of records, individual dots are impossible — hex aggregation makes the data readable.
// 08 — Quick reference
Key facts
// 09 — Variations
Types of hexbin maps
The hexbin concept has several variations depending on what is aggregated and how cells are encoded.
Count-based hexbin
Colors each hex by the number of data points it contains. The most common and simplest form of hexbin aggregation.
Value-aggregated hexbin
Colors each hex by the mean, median, or sum of a variable within its boundary. Useful for continuous measurements like temperature or revenue.
Bubble hexbin
Replaces color fill with proportionally sized circles inside each hex. Encodes value via area instead of color, freeing color for a second variable.
Multi-resolution hexbin (H3)
Uses Uber’s H3 hierarchical hex system to show different resolutions. Zooming in reveals finer hex cells nested inside coarser ones.
// 10 — FAQs
Frequently asked questions
What is a hexbin map?+
A hexbin map (hexagonal binning map) overlays a regular grid of hexagons onto a geographic area, counts or aggregates the data points falling within each hexagon, and then colors each cell according to its aggregated value. It transforms a cloud of individual points into a uniform, readable density surface.
When should you use a hexbin map?+
Use a hexbin map when you have thousands or millions of point-level observations that overlap when plotted directly. It also works well when you want to show spatial density without arbitrary political boundaries, and when your data is not tied to predefined regions (unlike choropleth data).
When should you avoid a hexbin map?+
Avoid a hexbin map when your data is already tied to administrative boundaries — use a choropleth instead. It is also a poor fit when you have very few data points that don’t need aggregation, or when exact point locations matter more than density patterns.
Is a hexbin map suitable for dashboards?+
Yes — a hexbin map can work well in dashboards as long as the panel is large enough for readers to perceive the encoded values, has a clear title, and includes the legend or axis labels needed to interpret it.
What category of chart is a hexbin map?+
Hexbin Map belongs to the Geospatial family of charts. Charts in that family are designed to answer the same kind of question, so they often work as alternatives when one doesn't quite fit your data.
How do you read a hexbin map?+
Start with the axis labels and legend, then look at the overall shape before zooming into individual marks. Compare prominent features against the rest of the data, and verify any conclusion against the underlying numbers when precision matters.