A resuable app with the boilerplate necessary for getting TIGER/LINE data into a GeoDjango project.
License: BSD 3-Clause "New" or "Revised" License
Python 100.00%
geodjango-tigerline's Introduction
This app is intended to make it easier to add TIGER/Line data to a GeoDjango project and save people from writing this same code over and over (collectively).
It is not (yet) exhaustive, it's just what I had and have needed in the past.
If you have models / load scripts for other data in the set, please fork/add and send me a pull request if you add other shapefiles. If you come up with useful manager methods, I'd love to see those too.
* NOTE: If you need cities, the best source for that is the US National Atlas. I have an app for those at https://github.com/adamfast/usgsdata-citiesx020
It's been tested and used with Django 1.10 and PostGIS + PostgreSQL.
Install
-------
Download the 2016 Tigerline files for all zipcodes, all states, and all counties
ftp://ftp2.census.gov/geo/tiger/TIGER2016/
* States - ftp://ftp2.census.gov/geo/tiger/TIGER2016/STATE/tl_2016_us_state.zip
* Counties - ftp://ftp2.census.gov/geo/tiger/TIGER2016/COUNTY/tl_2016_us_county.zip
* Zipcodes - ftp://ftp2.census.gov/geo/tiger/TIGER2016/ZCTA5/tl_2016_us_zcta510.zip
Unzip the files
Configure django.contrib.gis as described in the django docs.
Add "django.contrib.gis" and "tigerline" to INSTALLED_APPS
run `python manage.py migrate` which will run the migrations and make sure database tables are created.
If you want to import all three:
run `python manage.py load_tigerline --path=~/Path/to/shapefiles`
Or there are individual management commands if you only need one set:
run `python manage.py load_counties --path=~/Path/to/shapefiles`
run `python manage.py load_states --path=~/Path/to/shapefiles`
run `python manage.py load_zipcodes --path=~/Path/to/shapefiles`