Pleased with the disorienting outcome of my Mississippi-only map last week, I was challenged to consider how I might develop it this week. Our reading had me thinking about how “non-human Others” map their version of the world and spending time with the referenced interactive web documentary, Bear 71, keyed me into how humans-made features obstruct (often fatally) passage through their environments. That experience highlighted the physical structures to which animals must awkwardly adapt, and I started wondering about toxic chemical deposits in land areas that might, as least from the outside and to human eyes, look relatively safe. Curious if and how many of these sites exist along the banks of the Mississippi River, I embarked on a scavenger hunt for a dataset of national Superfund sites, which according to the U.S. Environmental Protection Agency, are contaminated sites that exist in the thousands “due to hazardous waste being dumped, left out in the open, or otherwise improperly managed.” The “EPA’s Superfund program is responsible for cleaning up some of the nation’s most contaminated land and responding to environmental emergencies, oil spills and natural disasters.” (Why oh why is it informally called Super?!)
I also wanted to get my hands dirty wrangling with data not of my own making. The EPA provides static and dynamic lists of Superfund sites online (check if there are any close to where you live here) but no JSON-formatted versions that I could find at data.gov. Next, I came across a relatively-recent dataset on Kaggle scraped from the EPA’s National Priorities List (NPL), which includes Superfund site names along with their latitude and longitude coordinates. The JSON format of the file, while valid, did not look familiar. I attempted to convert it to CSV with the intention to then convert to geoJSON, but as the file was 10MB it kept hanging in online-converter tools, even on those claiming to handle large file sizes. Fortunately, although not optimal, I found this map created in 2014 also from the NPL data that allowed me to download the data points in GeoJSON form.
From there it was a matter of figuring out how to incorporate another (in fact, a third) source and layer of data into my map. While this data covers all of the United States, I decided to maintain the minimalistic design and only reveal the contaminated areas while zoomed in to the river. (Okay okay, you can zoom out slightly with your mouse to survey more if you want.) Our early in-class earthquakes example helped me draw and paint circles for each Superfund site, and this Mapbox GL JS tutorial, provided another way to add popups upon mouse clicks to those points. So now cobbled together with my version from last week, my map deals with data in two ways—embedded in the HTML itself and also loaded from external files. It also handles the pop-up styling differently—one through CSS and the other directly in the HTML code. Probably not ideal, EXCEPT if you’re in the beginning stages of learning how it all works! And now it all makes sense to me.
I’ll add that installing the pretty-json ATOM package was essential in helping me identify the fields to pull into the Superfund popups. Of note, sites are of three categories: currently on the National Priorities List, proposed for the list, or removed from the list. I color-coded their circles accordingly and embedded that information into the popup along with a link to learn more about the site and EPA/community cleanup efforts. Ideally, I would prefer to include this information within each marker’s popup (and that Kaggle file provided lengthy site descriptions) instead of shooting users offsite and out of my map world.
While the Superfund site names sometimes disclose the current State's name and reveal the user's current position along the river, this additional information opens up all sorts of questions about what we can't see about the land from satellite photographs or from an IRL leisurely riverboat cruise.