Skip to content

Instantly share code, notes, and snippets.

Last active August 23, 2022 13:00
What would you like to do?
US Zip Codes

This is a d3.js visualization of US zip codes.

Original zip code dataset from Geocommons.

5MB shapefile with properties such as zipcode, state, name, population, area, more. (Thank you Bill Greer)

This converts it nicely:

topojson \
  -p name=PO_NAME \
  -p zip=ZIP \
  -p state=STATE \
  -o zips_us_topo.json \
<!DOCTYPE html>
<meta charset="utf-8">
.zip {
fill: none;
stroke: #CCC;
stroke-width: .5px;
<script src=""></script>
<script src=""></script>
<script src=""></script>
var width = 960,
height = 500;
var path = d3.geo.path();
var svg ="body").append("svg")
.attr("width", width)
.attr("height", height);
.defer(d3.json, "zips_us_topo.json")
function ready(error, us) {
.attr("class", "counties")
.data(topojson.feature(us, us.objects.zip_codes_for_the_usa).features)
.attr("class", "zip")
.attr("data-zip", function(d) {return; })
.attr("data-state", function(d) {return; })
.attr("data-name", function(d) {return; })
.attr("d", path);
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Copy link

Hi Jeffriesen, Thank you so much for the helpful code. Do you have any tips for how to create a .shp / .json file for a single state while keeping the zip codes as a property? I tried topojson ... -p ZIP, but I think it failed because I haven't found a proper California .shp file that includes zip code information. The zipcodes_for_the_usa file is great, but I only want California. Thanks!

Copy link

Rockin' gist @jefffriesen

Copy link

I was actually looking for the same thing as there a way to easily parse this file into separate topo.json files by state?

Copy link

jlev commented Sep 29, 2015

@RussRezek and @roesler-stan I just spent several hours doing this, because I couldn't find any current open data online. Compiled and simplified topojson with makefile at

Note, these are ZCTAs not actual zipcode routes.

Copy link

Much appreciated @jlev. I'm still having trouble scaling them properly using python Vincent, but I think it has something to do with the projections that I am using. They look fine in

Copy link

Not sure if this is relevant for anyone, but I created some GeoJSON files here grouping the zip codes in @jefffriesen's TopoJSON by Metropolitan Statistical Area (MSA).

Copy link

Can anybody help me? I need to get the zipcodes map, unfortunately the geocommons link is not available anymore... I need the full USA ZIP Code map, including Alaska... anybody knows how can i get it? I've been looking for that map for almost 3 weeks @jefffriesen

Copy link

oller commented Jul 7, 2016

Any luck finding anything @Oscarsgc?

In the same boat as you.. this topojson dataset is great, it's just seems to be missing Alaska (AK) and Hawaii (HI) which can be presented nicely with the albersUSA projection - as can be seen here:

Copy link

priyakhokher commented Mar 15, 2017

Hi @jefffriesen,
the link for the data does not work now ! Can you update it if you know where the data is now ?


Copy link

@jefffriesen - what is your recommendation to get a latest version of zips_us_topo.json(data)?

Copy link

Hey everyone - sorry - I never saw comments on this gist until just now. Unfortunately I don't know where any updated data is now. If you find it please post it here.

Copy link

Hi everyone, any one has updated topo JSON with MSA data? please share here if you find any..thanks

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment