270 likes | 770 Views
Open Source GIS. How we use free tools to do cool things. Martin Catala Donald Hayward. Why Open Source?. Why Open Source?. Error 999999. Why Open Source?. "Free Open Source Software" (FOSS) Free ($0) Free (-dom) Control Flexibility Quality (more eyes, more contributors) Innovation.
E N D
Open Source GIS How we use free tools to do cool things Martin Catala Donald Hayward
Why Open Source? Error 999999
Why Open Source? • "Free Open Source Software" (FOSS) • Free ($0) • Free (-dom) • Control • Flexibility • Quality (more eyes, more contributors) • Innovation
Why Open Source? • "Plays nice" with others • Open Standards mean you can keep ESRI but still get benefits from FOSS • SHP, WMS, WFS, KML, GeoJSON, etc. • Enterprise-grade software and support • Open Source GIS tools are not just toys anymore (Boundless)
Why Open Source? • It's more fun • Fewer don'ts and can'ts • If you can dream it, you can build it • The cool kids are doing it
Why Open Source? • Still skeptical? ESRI isn't. • Python (ArcPy) • https://github.com/Esri
Our (abbreviated) Toolbox: • PostGIS (a spatial database system) • QGIS (a desktop GIS application) • OpenStreetMap • GeoServer (c.f. ArcServer) • Python (GDAL, Mapnik, cluster computing) • OpenTripPlanner (Analyst Engine) • OpenLayers, Leaflet, D3.js (Web Mapping)
Transit Livability Explorer Made with: • OpenLayers (web map) • PostGIS (backend, analysis) • QGIS (analysis, data management) • ArcMap (analysis)
Transit Livability Explorer Analysis • Multi-step, often changing hands several times (ArcGIS -> PostGIS -> QGIS -> etc.) • Large-scale operations scripted with ArcPy, PostGIS SQL, or GDAL Python on USF Research Cluster
Transit Livability Explorer Click to select: • OpenLayers translates the click into (x,y) • A web API queries an indexed PostGIS table for features intersecting the clicked coordinates
Transit Livability Explorer Simplified GeoJSON Features with PostGIS: SELECT ST_AsGeoJSON( ST_Simplify( geom, 100 ) ) FROM `table`;
MPO Advisory Council Map • Project constraints: • Dynamic web map • Must work on all major browsers (even IE) • Quick update when boundaries change • No server-side processing • No cloud "add-ins"
MPO Advisory Council Map First Attempt: • GeoJSON on OpenLayers/Leaflet/GMaps • Several layers with many features and high-resolution boundaries • Worked fine on my computer • Client's browser crashed
MPO Advisory Council Map Then we tried... • Simplifying geometries • Better, but old version of IE still choked • Rendering static images • ArcGIS screwed up the georeferencing export
MPO Advisory Council Map Finally... • Re-discovered Mapnik • Python-based mapping library • Custom-made slippy tiles • Accepts Shapefiles as input • Generates 100,000+ map tiles in a few minutes.
Summary • Open Source is cheap • Open Source is practical • Open Source is cool