Each dot sits on the street segment its NOV was assigned to, at a random point along that segment and up to 5 m to either side, so dots on one block do not stack. A dot shows the block, not the exact address. Dots are blue so they do not read as part of the PM2.5 scale, and they switch tone on the strongest fills to stay visible. When the map is zoomed out, dots on the yellow, orange and red classes are drawn fainter so the fill still shows; zoom in to see them at full strength. Grey-blue marks the four classes under 7.0 µg/m³; yellow, orange and red mark the three classes above it.
Circle area is proportional to the number of NOVs. The scale is reset for each zoom level and year selection, so compare circles within one view. Every circle has a dark edge and a white halo so it stays visible on both the lightest and darkest fills.
| Most polluted tracts | PM2.5 level | Share of the City’s land area | Share of idling violations |
|---|
| Most polluted districts | PM2.5 level | Share of the City’s land area | Share of idling violations |
|---|
| District | Council member | PM2.5 | Idling violations | Share of all violations |
|---|
| Most polluted ZIP Codes | PM2.5 level | Share of the City’s land area | Share of idling violations |
|---|
| ZIP Code | Post office | PM2.5 | Idling violations | Share of all violations |
|---|
All NOVs in the tracts of each 0.5 µg/m³ band, divided by the combined area of those tracts.
The vertical scale of the lower chart is logarithmic: each gridline is ten times the one below. Tracts with no NOVs sit on the separate 0 line. These charts show that the two measures rise together across tracts. They do not show that one causes the other, and they do not account for traffic, enforcement or complaint activity.
| PM2.5 class | Tracts | Tract area | Area share | Idling violations | Share of violations | Area vs violations |
|---|