backAll Classes

Working & Designing with Spatial Data

This two day workshop focuses on geospatial data as part of a data visualization interface. You will build a solid foundation in web map design principles, and you'll gain hands-on experience working with spatial data in JavaScript.

Day 1: Designing with Geospatial Data on the Web

This 4 hour workshop will give you a solid foundation in web map design principles, with an emphasis on styling geospatial data as part of a data visualization interface. We will learn about the main considerations when communicating data geographically, and have hands-on experience styling your own maps in Javascript using d3.js and Leaflet. At the end of the day you should feel confident that you can put communicate your geographic data clearly and beautifully using your own web-based map.

Topics Covered

  • General cartographic principles applied to geospatial dataviz
    • Choosing between d3.js and Leaflet
    • Basemap vs data layers, rasters vs vectors
    • Choosing off-the-shelf basemaps vs creating your own
    • Or do you even need a basemap?
  • Map projections
    • What are they? Why do they matter?
    • In d3.js: how to use map projections
    • In Leaflet: how to lie to Leaflet to get projections other than Mercator
  • ​Map scale and generalization
    • How much detail does your map need?
    • What are the pros and cons of generalizing your shapes?
  • Data classification and symbology
  • Labeling
  • Color

What won’t be covered

  • Tiled basemap design (CartoCSS or MapboxGL)

Prerequisites

  • Basic programming/data literacy (familiar with CSS)

Day 2: Working with Geospatial Data on the Web

This 4 hour workshop will give you a solid foundation for working with spatial data in Javascript. We will convert, modify and visualize data from various sources and formats. At the end of the day you should feel confident that you can put any Shapefile, GeoJSON or CSV file onto a web-based map.Topics Covered

  • Common Geo spatial file formats: Shapefiles, GeoJSON, topojson and even CSVs.
  • The fundamentals of GeoJSON, how it works (geojson.io) and how to manipulate it programmatically (turf.js)
  • Loading your spatial data into the browser
  • Working with Leaflet and d3.js for visualizing spatial data quickly.
  • Adding simple interactivity

What won’t be covered

  • Raster & vector tiles
  • Desktop GIS software
  • Backend/server-side programming

Prerequisites

  • Basic command line familiarity (comfort running commands from a recipe)
  • Basic programming/data literacy (familiar with JSON)