When Kerry Bannen was choosing her thesis topic for her Master’s in Information Science from the University of North Carolina (UNC), she was eager to combine her skills with her long-standing passion for maps, particularly historical maps. While working in the UNC archives, Kerry became fascinated by how maps could be used as storytelling tools, providing a unique way to visualize complex information and convoluted histories. For her thesis, she focused on the history of U.S. counties and their shifting boundaries over time. Kerry also decided to build a web map to help people understand and interact with this spatial history.
Getting started with Mapbox
Kerry’s inspiration for using Mapbox came from seeing beautifully designed maps online — maps that all had one thing in common: they were all built with Mapbox. While Kerry had the skills and experience to gather and structure the historical data she needed, visualizing the data in a compelling way was a different challenge. Mapbox offered a way to create both visually appealing and interactive maps, relatively intuitively.
“I knew I could figure out how to create the data,” Kerry said, “but I didn’t know how to make a map visually appealing. Mapbox had that part covered, so I didn’t have to worry while I figured out the data.”
Kerry’s first Mapbox map focused on North Carolina, intended as a proof of concept for her thesis. She wanted to see if it was feasible to animate shapefiles over time with a slider. Once her thesis was complete, she expanded the project to cover the entire United States, using data from the Newberry Library’s Atlas of Historical County Boundaries.
Creating “US Historical Counties Through Time”
Kerry’s final map is an impressive, interactive historical journey through the formation of U.S. counties. The main feature of her map is a time slider that lets users scroll through different periods, watching as county boundaries shift and evolve. Users can zoom in for a more detailed view of specific states or keep the map zoomed out for a larger picture of U.S. history. The default basemap style includes present-day state outlines and place names to help orient themselves within the historical data.
“I hope people using my map can better visualize the historical changes in their area,” Kerry shared. “Ideally, someone can look at the whole country, get a sense of its transformation, and then zoom in to learn something new about their local history.”
Adding context with Native Land data
One challenge Kerry considered was how to convey the wider historical landscape that influenced the formation of counties over time. Adding an optional satellite style basemap offered some additional visual clues, but Kerry recognized that the map might give the impression that areas were historically unoccupied, erasing the presence of Indigenous peoples. Therefore, Kerry chose to incorporate data from Native Land Digital, which provides geospatial data on the locations of Indigenous territories and languages. Native Land Digital shares a Mapbox-hosted tileset to make it easier for developers to add Native Land data layers to their maps.
“My map shows the progression of colonization,” she explained. “Adding the Native Land layer helps users understand who was living on the land before colonies and states were formed. It adds an important layer of context.”
Resources and learning
Kerry relied heavily on Mapbox documentation and examples to bring her project to life. She also turned to StackOverflow for JavaScript questions, her IT colleagues at the library, and good old-fashioned trial and error to troubleshoot when she felt stuck.
For Kerry, Mapbox was the ideal tool because it provided the perfect balance between customization and accessibility. As she puts it: “It is completely customizable for people who want to control the details of their maps, but there are easy-to-use presets for those who don’t have the time or skill to customize. Mapbox GL JS provides capabilities for data-driven styling for any need I could come up with.”
Advice for aspiring map builders
For others who want to create meaningful, custom, data-driven maps and who are new to building with Mapbox, Kerry’s journey offers a few takeaways:
- Start with a small concept: Kerry started with a smaller initial map as a proof of concept. Starting small can help you troubleshoot and refine your project before scaling up and adding additional features.
- Use available learning resources: Mapbox documentation and examples were crucial for Kerry’s learning curve. Explore all available resources, including code snippets and tutorials, and reach out to colleagues or the developer community if you get stuck.
- Focus on the user experience: Kerry’s inclusion of the Native Land data layer brought essential historical context to her map, adding a new angle to her visualization of existing data. Other features in her basemap design and optional layers help users to orient themselves to the historical data.
Kerry’s story highlights how Mapbox can help turn research into an engaging and educational learning experience. For junior developers looking to build impactful maps, her experience shows that you do not have to be an expert to create something meaningful — you just need a vision and the willingness to learn.
Build your first web map with Mapbox with help from our GL JS Getting Started guide.