The objective of this project is to create python scripts that can export the map automatically using a templated. In the final results of this project, the sample map shows the population density of Salt Lake County in census blocks unit. By creating this scripts, it provides a solution for people who is unfamiliar with ArcGIS products can still get a professional map that shows the details they want.


I create an empty shapefile in ArcCatalog to store my map template, the using python to add the shapefile that I downloaded from the US Census Bureau with population composition details and Utah census block polygon. I also using SQL language to determining the output county and its output field.




This is an individual project and I am also responsible for developing a complete project plan and set the goals and objectives as well as make the tasks in this project be completed in time.


This is an introduction level course for beginners to learn Python languages and its basic theories.

There are lab sections for this course too, and for each lab I need use the skills and theories I learned from  the lecture to finish the lab assignments each week.

After finished this course, I am able to :

1. Understand the basic theories and definitions of Python language.

2. Apply map algorithms and coding in GIS using Python language.

3. Read and understand Arcpy package in Python

4. Write python scripts for a final project in ArcGIS. 



Geoprocessing with Python

Left image is the original map template I created for this project, after running the python code, one of the result is the right map that displays the population density.

The left image shows a final products of my python script:


1.The selected output shapefile of Salt Lake County

2. An automated saved new mxd

3. A pdf map

Skills involved in this project:

Basic Programming or Scripting, Spatial Data and Algorithms, Model Building, Structured Query Language (SQL)


Below shows the scripts I wrote for my map automation process:

© 2019 by Siwen Cheng