Giter Club home page Giter Club logo

mapmakers-cheatsheet's Introduction

What kind of data do you have?

Points

  • How much data?
    • Just enough
    • Lots of points, and each point has data that you want to be able to explore. For instance, apartment listings which might number 10 per city block, but you want to be able to click on them and see photos and links.
    • Too much and the points have some value that can be aggregated
      • Create hexbins of your points with the QGIS hexbin plugin, to make polygons. Start again at Polygons
    • Too much and the points just represent presence - like tweets
    • Tons of data, and you don't need labels? Use tippecanoe.

Polygons

  • How much data?
    • Just enough
      • Convert the data to GeoJSON & make a simple Leaflet map
    • Too much, the polygons have necessary detail
    • Too much, the polygons have unnecessary details or many of the polygons have shared borders, like state or province maps

Attributes

  • What kind of attributes?
    • Absolute numbers
      • Convert the points to centroids with QGIS and start from Points
      • Normalize absolutes to rates by dividing over polygon area, and start from Rates
    • Rates or Categories
    • Temporal data - values over time
    • Multivariate data: like counts of different species or ethnicities
    • Names of places, like countries
      • With IDs:
        • ISO2 or ISO3 codes
          • Download Natural Earth data at the right level, join with QGIS, and start again at Polygons
        • ZIP codes
          • Download ZCTAs and join
      • Without IDs
        • Find data with IDs, or manually join with polygons
    • Addresses

Lines

  • Small amounts of data: use Leaflet
  • Lots of data, or need line labels (are they streets?)? Use Mapbox Studio
  • Tons of data, and you don't need line labels? Use datamaps.

Raster

  • Already georectified & cleaned (from satellites or fixed-up sources)
    • If you want to host it yourself
      • Render tiles with MapTiler, publish them on S3 or some other service, view them in Leaflet
    • If you want someone else to host & process
      • Upload to Mapbox and view in Mapbox GL JS or any client
    • Read processing satellite imagery to understand GDAL/ImageMagick workflow.
  • Raster images from drones
  • Raster images from scanned maps

A format that I can't read

  • Install GDAL and use ogr2ogr to convert the file. If you can't install this, you can use it online with Ogre
  • Commercial tools:
  • Ask your source for a better file format

OpenStreetMap

  • I want raw data right from the source, up to the minute, in its original form? planet.osm
    • Drawbacks: downloads are very large and require specialized tools to process
  • I want raw data for subsets of the world: Geofabrik extracts or Mapzen metro extracts
    • Drawbacks: only includes predefined areas, not as up-to-date as Planet.osm
  • I want data useful for fast basemaps, already processed into vector tiles: Mapbox
    • Drawbacks: doesn't include all features or all tags on features, only those appropriate for visualization
  • I want raw data as tiles, which include more data and complete tags: OSM QA Tiles
    • Drawbacks: much larger & slower than tiles designed for visualization
  • I want a specific subset of data by area, filter, and want the newest data possible: Overpass
    • Drawbacks: can't return country-sized chunks of data, only smaller subsets
  • I want filtered, up-to-date extracts in extra formats like KMZ, Garmin Image, etc: HOT Export Tool
    • Drawbacks: can't do arbitrary regions

I don't have data yet

  • Government Data
    • Contact the town or federal GIS dept you need
    • Use FOIAMachine.org to request data via FOIA
  • Personal Data
    • If you want to create data, use geojson.io and draw it.
  • Global Data
  • Historical Data

Visualization defaults

  • Projection:
  • Colors:
  • Scales:
    • For any data
      • Try linear first
      • Then quantile
    • For data of rates or compounding values
      • Try log and power scales
  • Points:
    • Start with normal circles with no strokes
    • Scale points by area, not diameter
  • Flair:
    • Only add a north arrow if north isn't up
    • Always attribute your data, especially OpenStreetMap, to avoid the nerd wrath
    • If it zooms, add visible zoom controls. Pan isn't necessary, but not everyone has a scroll wheel / multitouch

See also

mapmakers-cheatsheet's People

Contributors

jgravois avatar tmcw avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

mapmakers-cheatsheet's Issues

Add carto colors

Colorbrewer shouldn't be recommended for dark backgrounds, and carto colors work on dark.

Definition of "just enough"

For the user it would be probably good to provide some numbers on what are the numbers behind your "size categories"

TileMill Alternative?

Mapbox has officially retired TileMill and I was wondering if there was a more current alternative out there. Thanks!

Way too many points

  • Too much and the points just represent presence - like tweets
    • Create a heatmap with Leaflet.heat or QGIS heatmap plugin. If you
      use QGIS heatmap, start again at Raster.

Right now the cheatsheet doesn't cover if you've got way too many points, enough make it unrealistic to initial processing via anything but a command line client.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.