All Projects â†’ openstates â†’ openstates-geo

openstates / openstates-geo

Licence: MIT license
Source for state legislative district map tiles for openstates.org

Programming Languages

python
139335 projects - #7 most used programming language
Dockerfile
14818 projects

Projects that are alternatives of or similar to openstates-geo

localtileserver
🌐 dynamic tile server for visualizing rasters in Jupyter with ipyleaflet or folium
Stars: ✭ 190 (+900%)
Mutual labels:  gis, map-tiles
google-maps-at-88-mph
Google Maps keeps old satellite imagery around for a while – this tool collects what's available for a user-specified region in the form of a GIF.
Stars: ✭ 93 (+389.47%)
Mutual labels:  gis, map-tiles
shapefile-rs
Rust library to read & write shapefiles
Stars: ✭ 38 (+100%)
Mutual labels:  gis
programming-for-gis-and-rs
Materials for the Intro to Programming for GIS and Remote Sensing Course that I teach at Saint Louis University. They include the updates I made for the spring 2020 and fall 2020 semesters.
Stars: ✭ 61 (+221.05%)
Mutual labels:  gis
classybrew
Classybrew is a utility for generating statistical class breaks in your data and applying colorbrewer theory to you color palette.
Stars: ✭ 34 (+78.95%)
Mutual labels:  gis
val3dity
Validation of 3D primitives according to the international standard ISO19107
Stars: ✭ 65 (+242.11%)
Mutual labels:  gis
bikenwgrowth
Source code for the paper "Growing urban bicycle networks", exploring algorithmically the limitations of urban bicycle network growth
Stars: ✭ 39 (+105.26%)
Mutual labels:  gis
cntms
Tile Map Server reverse proxy with coordinates regularization
Stars: ✭ 19 (+0%)
Mutual labels:  gis
wildfire-forecasting
Forecasting wildfire danger using deep learning.
Stars: ✭ 39 (+105.26%)
Mutual labels:  gis
mago3d-CMS
mago3D Project
Stars: ✭ 61 (+221.05%)
Mutual labels:  gis
MapDownloader
Map downloader based on GMap.NET
Stars: ✭ 226 (+1089.47%)
Mutual labels:  gis
custom-mapbox-layer
A custom layer based on Mapbox
Stars: ✭ 66 (+247.37%)
Mutual labels:  gis
gds course
Geographic Data Science, the course
Stars: ✭ 60 (+215.79%)
Mutual labels:  gis
book-note
📖 book note,čŊŧäđĶįŽ”čŪ°
Stars: ✭ 21 (+10.53%)
Mutual labels:  gis
Atlas
An extensible 3D GIS application for visualization, analysis and research.
Stars: ✭ 113 (+494.74%)
Mutual labels:  gis
gazetteer
OSM ElasticSearch geocoder and addresses exporter
Stars: ✭ 93 (+389.47%)
Mutual labels:  gis
geosapi
R interface to GeoServer REST API
Stars: ✭ 26 (+36.84%)
Mutual labels:  gis
wms-tiles-downloader
CLI for downloading map tiles from WMS server with given bbox and zoom.
Stars: ✭ 47 (+147.37%)
Mutual labels:  gis
NHibernate.Spatial
NHibernate.Spatial is a library of spatial extensions for NHibernate, and allows you to connect NHibernate to a spatially enabled database and manipulate geometries in Linq or HQL using NetTopologySuite, providing you with a fully integrated GIS programming experience.
Stars: ✭ 38 (+100%)
Mutual labels:  gis
ais
Address Information System
Stars: ✭ 18 (-5.26%)
Mutual labels:  gis

Issues

  • Tracked in our central issue repository: Geo Issues

Open States Geography Processing & Server

Generate and upload map tiles for the state-level legislative district maps on openstates.org, both for state overviews and for individual legislators.

  • Source: SLDL and SLDU shapefiles from the Census's TIGER/Line database
  • Output: a single nationwide MBTiles vector tile set, uploaded to Mapbox for hosting
    • Intermediate files are also built and retained locally, stored in the data directory for debugging

Dependencies

  • Python 3 and poetry
  • GDAL 2
  • curl
  • tippecanoe
  • unzip

Running

There are several steps, which typically need to be run in order:

  1. Setup Poetry:

poetry install

  1. Download SLD shapefiles:

poetry run ./scripts/get-shapefiles.py

  1. Convert to geojson with division IDs:

poetry run ./scripts/to-geojson.py

  1. Import into database:

poetry run ./manage.py load_divisions

  1. Convert to mbtiles and upload:

./scripts/make-tiles.py

The MAPBOX_ACCOUNT name and MAPBOX_ACCESS_TOKEN (with upload privileges) must be set as environment variables. If not, then the upload step will be skipped.

Running within Docker

Instead of setting up your local environment you can instead run using Docker. Using Docker Compose will still allow you to access all intermediate files from the processing, within your local data directory.

Build and run with Docker Compose. Similar to running without Docker, the MAPBOX_ACCOUNT and MAPBOX_ACCESS_TOKEN must be set in your local environment.

docker-compose up make-tiles
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].