GISC 3200K - Programming for Geospatial Science & Technology
See also GISC 5200K.
Contents
1 Lectures
- Lecture 1: Introduction to programming
- How to set up Python for geospatial science and computing
- Programming pre-assessment
- Homework 1: Pre-assessment grading
- Quiz 1
- Lecture 2: Python in ArcGIS Pro 1
- Lecture 3: Python in ArcGIS Pro 2
- Exam 1
- Lecture 4: Literals, variables, and constants in Python
- Lecture 5: Numeral systems in Python
- Lecture 6: Basic data types in Python
- Lecture 7: Sequence data types in Python
- Lecture 8: Control statements in Python
- Exercise 10: Branch
- Exercise 11: Debug branching
- Exercise 12: Print the range of an integer using
if
- Exercise 13: Print the range of an integer using
if
,elif
, andelse
- Exercise 14:
for
and list - Exercise 15:
for
and forward indexing - Exercise 16:
for
and reverse indexing - Exercise 17: Summation using a
for
loop - Exercise 18: Summation using a
while
loop - Homework 4: Summation
- Homework 5: Random integers
- Lecture 9: Functions in Python
- Exercise 19: Define your first function
- Exercise 20: Non-returning function
- Exercise 21: Add function
- Exercise 22: Why functions?
- Exercise 23: Distance function
- Exercise 24: Yet another distance function
- Exercise 25: File-writing function
- Exercise 26: File-reading function
- Exercise 27: Directory-listing function
- Exercise 28: Create number files
- Exercise 29: Add numbers from the number files
- Exercise 30: Generate random integers
- Exercise 31: User-input function
- Exercise 32: Plot a GeoTIFF file
- Exercise 33: Calculate the average cell value of a GeoTIFF file
- Homework 6: Toxicode Python certificate of completion
- Exercise 34: How to extract cell values from a GeoTIFF file using NumPy
- Exercise 35: How to classify a GeoTIFF file using NumPy
- Exercise 36: How to detect changes between two GeoTIFF files using NumPy
- Exercise 37: How to save a NumPy array as a GeoTIFF file using GDAL
- Exercise 38: How to calculate the area of a certain class in a GeoTIFF file using NumPy
- Project proposals
- Class project 1: Rock-paper-scissors game
- Exam 2
- Quiz 2
- Class project 2: Thiessen polygon algorithm in Python (not completed)
- Quiz 3
- Review fundamentals
- Quiz 4
- Class project 3: Noise reduction in images
2 Past materials
3 Past projects
3.1 Summer 2021
3.2 Fall 2020
- A parallelized approach of the moving window & multi-resolution raster correlation indices for geospatial problems within the Python language by Owen Smith, Fall 2020
- Calculating NDVI for change detection by Anna Watkins, Fall 2020
- Change in vegetation due to Wollemi National Park wildfires by Austin Poole, Fall 2020
- Coral bleaching event prediction model by David Winsett, Fall 2020
- Correlation between wildfires and global warming by Tommy Oliver, Fall 2020
- Etowah River project rapid classification tool by Natalee Dula, Fall 2020
- Etowah River project runoff & flow accumulation tool by Jakob Bullwinkle, Fall 2020
- Flood and hurricane analysis of Hurricane Katrina by Merritt Gazaway, Fall 2020
- HardiPy - An open-source program for the development of an updated plant hardiness zone map by Zach Pilgrim, Fall 2020
- Income inequality - Employing the Gini coefficient by Katelynn Comer, Fall 2020
- Kernel density analysis of traffic incident data by Patrick Perkins, Fall 2020
- LiDAR above-ground biomass calculation tool project by Jeff Robertson, Fall 2020
- Modeling the spread of wildfire by Jacob Lougee, Fall 2020
- NumPy data management by Johnson Keller, Fall 2020
- Python automation tool of a remote sensing analysis of satellite imagery of identification and classification techniques for alpine permafrost by Aaron Carney, Fall 2020
- Python script for precipitation statistics by Jennifer McCollum, Fall 2020
- Water remote sensing of suraface area and temperature measurements of Lake Hartwell by Baylea Gaddis, Fall 2020
3.3 Fall 2019
- A stand-alone NDVI tool using Python 3.7, GDAL, NumPy and Matplotlib by Meghan Touat, Fall 2019
- Calculating area of an irregular polygon in Python by Devon Elam, Fall 2019
- Calculating the area of Georgia counties by Ian Pearce, Fall 2019
- Determining county area using Python by Tyler Henderson, Fall 2019
- Finding polygon area with Python 3.7 by Wyatt Wilcox, Fall 2019
- Function for calculating polygon area (Python 3.7) by Conrad Moore, Fall 2019
- Polygon area calculator by Chris Pugel, Fall 2019
- Shoelace method by Payton Holbrooks, Fall 2019
- The football field generator program by Jackson Winskie, Fall 2019
- Using Python programming to calculate the area of an irregular polygon by Matt Palmer, Fall 2019
- Visually representing hockey shot data by Kaitlen Martin, Fall 2019
4 Recommended GIS articles
5 References
5.1 Python
- Official Python website
- Real Python tutorials
- NumPy
- Matplotlib
- GeoRasters
- Fiona
- PyShp
- Shapely
- GeoPandas
- contextily
- Descartes
- Cartopy
- Unofficial Windows Binaries for Python Extension Packages
- Geo-Python AutoGIS
- Python GDAL/OGR Cookbook 1.0 documentation
- RasterCalculator
- Python Programming And Numerical Methods: A Guide For Engineers And Scientists
- Toxicode Python
- How to Think Like a Computer Scientist: Interactive Edition
- Expressions vs. statements
- Brython - A Python 3 implementation for client-side web programming
- Python how-to
- Python exercises