Geocoding and Web Mapping

Table of contents
  1. Learning Objectives:
  2. Geocoding
  3. Web Mapping
  4. Using Python for GIS

Learning Objectives:

  • Gain Familiarity with Geocoding
  • Make a Simple Web-Map
  • Earn Extra Credit!

Geocoding

The process of attributing coordinates (Latitude/Longitude) to descriptive locations (Street Address). We can use a variety of web based services (google maps, ESRI, mapbox, open street map, etc.) to perform geocoding. We’re using Mapbox today because it strikes a good balance between accessibility and accuracy.

Google Maps

Arguably the best geocoding service, but it costs money :/ 5.00 USD per 1000 request.

ArcGIS World Geocoder

You can geocode in ArcGIS Pro. You can find a simple tutorial here and more information here if you need to geocode for your final proejct. Feel free to give it a shot on your own time if you want. The reason I am not fond of using ArcGIS Pro to geocode: ESRI geocoding services uses a credit based system for geocoding because it is a “premium” service. As a student, you get something like 1,000 credits, which is easy to go through quickly. You can get more if you request them from Jose, but its inconvenient, and Jose only has a limited number to give out. It makes learning/troubleshooting difficult.

Mapbox

A “freemium” service up to 100,000 requests per month and gives fairly reliable results. This is what we will be using. It requires you to create a free Mapbox account. Once you have an account, you will be given an access token. Which lets you use the Mapbox’s services. We are going to be using Mapbox’s Application Programming Interface(API) which lets us programmatically access Mapbox tools and services. You can use these APIs to retrieve information about your account, upload and change resources, use core Mapbox tools, and etc.

Web Mapping

Web mapping takes cartography beyond static maps. It allows us to create dynamic, interactive web maps that can be embedded in webpages!

ArcGIS Online

ESRI has a platform called ArcGIS Online. If you’re interested in learning about it, my colleague Maya at the UBC Library Research Commons has created this workshop. You can look through this page if you’re interested in learning how to use it.

Leaflet

Leaflet is an open-source (free) JavaScript library for mobile-friendly interactive maps. It works efficiently across all major desktop and mobile platforms and has a well-documented API. We are going to use a Python package called follium to “communicate” with Leaflet and make some simple web maps like this.

View Map in New Tab

Using Python for GIS

Its a great programming language, and consistently ranks among the most poplar in the world! But it is not the only language. Just as English, Cantonese, or Punjabi can all be used to write a paper; Python, Javascirpt, or R can all be used to make a map. I like python because its very flexible, fairly easy to read / write, well suited for data analysis, has lots of packages for GIS, and it’s completely free! You will not be expected to know any code or learn how to code. I just want to introduce you all to some the possibilities.


Table of contents