Examining the Relationship between Social Justice Designated Areas & Natural Resource Performance in NYC

Lab Reports, Maps


As I was exploring the datasets on NYC Open Data, one dataset on environmental justice designated areas caught my attention. The map shows areas that are defined by the Environmental Justice for All Report per Local Law 60 and Local Law 64 (2017). Based on prior work I’ve done in studying and producing maps based on demographic data New York City, it was clear these areas are across socio-economic lines. While a clear aspect of environmental justice is that poor environmental, and therefore health, outcomes disproportionally affect “communities with a majority of low-income residents and people of color — often those with the least amount of power and contribution to environmental degradation” (Environmental Justice, NYC Mayor’s Office of Climate & Environmental Justice), the problem is two-fold. Not only is it about “ensuring access and inclusion for people at every level of the planning and decision-making process, and equal protection from environmental and health hazards and [closing] the gap on these environmental health disparities”, but also recognizing the current environmental performance and impact of privileged communities.


Map Layers from dataviz.blog

I took inspiration from the way these layers create a visually compelling static image. I am familiar with this technique of layering plans to explore and plan different spatial relationships from my prior GIS work. However, I wanted to try this layering technique with choropleth maps in a way where the color scales would still be clear and effective. In this bivariate choropleth map example below from Joshua Stevens, the matrix key provides a succinct explanation of the color scales, allowing viewers to intuitively understand what the map is trying to display with the different shades of color. While the colors were selected manually in ArcGIS, I hoped to create something similar within Tableau.

Bivariate Choropleth Map from Joshua Stevens


I used several datasets from NYC Open Data including the Environmental Justice Area Census Tract Designation and Open Space (Parks) shapefiles, as well as the NYC Energy & Water Performance Map (csv). I brought these all into Tableau Public as spatial data in different layers in order to investigate the relationships among these factors.

Methods & Process

1. Creating the Base Map

The base of my visualization is the Environmental Justice Area Census Tract Designation dataset with the Open Space overlaid on top. I chose to use high-contrast colors for these layers because I want the energy and water performance to have an opacity on top of this and it appears that there is some relationships between the environmental justice designated areas and heir proximity to large parks. Green was selected for the parks based on general color association with the variable, and therefore shades of red were used for the environmental justice areas because they are opposite on the color wheel. I left “Non-Environmental Justice Areas” grey to allow us to see the overlays in the next step more clearly. I decided to take borders around the individual census tract polygons off for both of these layers because the areas are all pretty fine and seemed to clutter these base layers. Additionally, once I placed the water and energy performance layers, which are based on zip code, it became too confusing with the areas split up differently.

2. Creating the Choropleth Overlays

Selecting the colors and opacities were crucial for these choropleth layers, which are meant to be viewed one at a time over the base map. I selected colors that are generally associated with the variable that they represent (yellow for energy, teal for water, and purple for greenhouse gas), all set to 70% opacity to create enough distinction. It was also important to consider the way the colors would look overlaid on the shades of red in the base map to be able to recognize patterns where colors landed on top of each other. For example, I think it’s clearest in the energy overlay colored in yellow because the yellow is nice and distinct over the grey non-environmental justice areas, and is also clearly different shades of orange (red+yellow) where it does intersect with the base map.


I created two dashboards for this visualization. The first displays the base map and allows you to toggle the choropleth overlays on and off on the left side. Tooltip is set to display the count of environmental impact of each of those variables in the units in which they are measured. The second dashboard displays these four maps in a set of small multiples to give viewers the ability to compare across all of the maps.

Base Map: Environmental Justice Area Census Tract Designation & Open Spaces

The most striking thing I noticed was that, especially in Manhattan and Brooklyn, most of the high impact energy and water areas are in non-designated environmental justice areas, as seen by the purest and darkest areas of color on the choropleth maps. This means that non-designated environmental justice areas as defined by Local Law 60 (e.g. privileged census tracts) are actually consuming the most energy and water, which of course affects the surrounding areas (designated and potential environmental justice areas). While this isn’t surprising, I think it reinforces the fact that it’s not enough to write legislation that will address “environmental justice areas” (although I haven’t looked enough into the action items and plans for these areas). There is potential to also write legislation that monitors this dense energy and water consumption in privileged areas, which would help the overall negative health and environmental outcomes in these environmental justice designated areas.


I think the maps I created help convey an important point, but I think clarity in the colors used could be improved. Using opacities naturally muddies colors so I think recreating this visualization in ArcGIS, using the color techniques that Joshua Stevens used, could improve the overall clarity. I also recall other tools in ArcGIS like creating a clipping boundary from one layer of data and applying it to another. For example I could use the environmental justice designated areas boundaries to clip each choropleth map. I think this would make for an interesting series of maps that could allow you to focus just on environmental justice designated areas versus potential environmental justice designated areas versus non-environmental justice designated areas, instead of viewing everything all together. Something else that could be investigated on a data level is finding a dataset that connects zip code to census tracts, in order to show boundaries consistently throughout. the visualization.