dymaptic

Hexagons are the Bestagons: a GIS Love Story

Written by Christopher Moravec | Feb 28, 2025 2:44:12 PM

As any CGP Grey fan knows, hexagons are indeed the bestagons.

 

But here at dymaptic, we're not just on the hexagon bandwagon because they look cool (they totally do). We're using them to solve real-world problems!

Let's talk about site selection (a.k.a. Site Suitability Analysis), but make it fun! Imagine you're like me, in the Pacific Northwest for those dark and rainy winter months, desperate for the perfect escape to a sunny vacation spot. While you might say "Christopher, just google (or ask ChatGPT) for "best beaches in winter," I say that as GIS nerds, we can do better!

Normally, site selection is an image-based workflow, relying on raster data. If you've never worked with raster data, you can think of it as a giant image, or a grid of pixels each containing bits of information like elevation, slope, temperature, precipitation, or sunshine hours. We can then do image processing to combine these together with different weights, for example. But when you have terabytes or petabytes of data, traditional raster processing can become computationally expensive and time-consuming. Sometimes you need a different approach1 that allows for faster queries and more flexible analysis. Enter our hexagonal heroes.

 

Why Hexagons?

Hexagons are nature's favorite shape for a reason: they pack together perfectly, cover space efficiently, and all adjacent hexagons are exactly the same distance from each other2

 

They also offer some unique advantages to GIS analysis:

Pros:

  • They're vector features, which means we can attach multiple attributes to each hexagon3.
  • We can use Arcade expressions to create dynamic, complex symbolization.
  • They're great for aggregating data at different scales.
  • They look way cooler than squares (sorry, squares!).

Cons:

  • When you cover a large area, you end up with A LOT of features.
  • Rendering can be slower than raster in some cases.
  • Your colleagues might get tired of hearing you say "bestagons."

 

Real-World Application

Let's go back to my vacation example. Instead of working with a bunch of big raster datasets of weather patterns, we can create a hexagonal grid where each hexagon contains attributes for:

  • Average winter temperature
  • Precipitation data
  • Flight costs from PDX
  • Number of beach access points
  • Hotel prices
  • Local cuisine ratings

Some of this data might be hard to get, like number of beach access points. Still, if we used the other attributes to narrow down our search space, we could use a deep learning package like TEXT SAM to attempt to extract beach access points automatically, but that's a different blog post!

From here, we could use Arcade expressions to create complex algorithms that consider all of these factors and dynamically update the symbolization. Warm hexagons with cheap flights and good food glow a bright yellow, while cold, expensive areas fade to blue. We could even add some custom sliders that allow us to dynamically adjust the weights of each variable to see what different areas of the country might look like!

 

When Hexagons are not the answer

Unfortunately for me and the other hexagon enthusiasts out there, a hexagon map for site selection is not always the right answer. Here are a few scenarios where they tend to shine:

  • You need to frequently update or query multiple attributes (or dynamically change weights in the UI)
  • Your source data is already vector-based
  • You want to create complex, dynamic symbolization
  • The final output needs to be web-friendly
  • You're dealing with large ~~raster~~ (raster or vector) datasets that need to be simplified while maintaining analytical capabilities

 

On the other hand, hexagons are not the most ideal if:

  • You need to represent horizontal lines. Hexagons can hide those when moving horizontally, as the lines alternate going between two hexagons and going through the middle of one.

  • Related to the item above, hexagons also cannot be addressed using a simple xy coordinate system. They need something a bit more complex.
  • Your data is already all in a grid. In this case, it might be better to simply use that existing grid.
  • Coordinate Systems / Spatial References! Most hexagons are mapped using a cylindrical system. If that doesn’t work well for your data, you might need a different spatial reference, or, to use something other than hexagons. (Specifically, if you are using global data, or data close to the poles, you might see some contortion of the hexagons’ shapes, which can be confusing to users!) The size of the hexagons can also help mitigate this but using more, smaller hexagons will increase the number of records you have overall.

For more information on using Hexagons for spatial analysis, check out the ArcGIS Pro documentation.

Whether you are planning a sunny winter escape, or tackling the more serious challenges of solar or wind farm placement, or expanding your company to a new location, hexagons offer a powerful alternative to traditional raster analysis. They are not always the perfect solution, but when they work, they work beautifully. And hey, if nothing else, they'll make your map look fantastic because, let's face it - hexagons really are the bestagons.

P.S. I only used bestagon 6 (now 7) times. And I am amused at how auto-correct tries to make it "best wagons"...

  1. There are lots of pros and cons for using hexagons vs rasters. I'm only covering a few of them here. It's worth giving it a try if you haven't yet, but remember - while hexagons are great, they're not the only tool in your GIS toolbox. (Though they might be the most stylish one!)
  2. Unlike squares, which have an awkward diagonal situation.
  3. Yes, there are also ways to do that with rasters, but let's be honest, it is easier with features.

 

Author's Note

I wrote this post (Christopher), and I am a Human. However, I do have an augmentation process to help me write faster and better using generative AI. (For more information on that, checkout my personal blog (christophermoravec.com). Some of the jokes, probably the ones you laughed at, were written by an AI that leverages both OpenAI and Anthropic models to do my bidding.