Digital Geography

SciPy integration in ArcGIS

Most of GIS users today will probably work with ArcGIS. Since version 10 the implementation / integration of Python into the ArcGIS framework and ArcPy it’s important for ArcGIS users to be aware of the capabilities of using Python in batch processing tasks, data manipulation and the broad possibilities of Python itself (eg. Numpy, Sympy etc.). SciPy will another topic for the future…

Python for Geospatial Data Analysis (Part III)

Writing Geospatial Files In the last post in this thread I began discussing basic syntax and how to open and read a geospatial raster file. This installment in the series will demonstrate how to take the data we read from the file and write it out to a new file. In this case, we won’t change anything in the data, just use it as a means to demonstrate writing a file. In order to write a file, there needs to be a small addition to the subroutine for reading data. In the previous post the subroutine didn’t return the data…

Python for Geospatial Data Analysis (Part II)

Reading Geospatial Files In the last post in this thread I provided a bit of background and some simple instructions for installing python and the necessary modules for geospatial analysis. In this post I will cover some basic python syntax and reading raster data from a geospatial file. Let’s get started. Python files typically end in the extension .py. In a OSX/Linux environment, the first line in your file should be the interpreter you want to use. On my macbook, my python executable is /opt/local/bin/python, so the first line of my file is After this, you need to load the…

Python for Geospatial Data Analysis (Part I)

For my first post on digital-geography.com I wanted to begin a discussion on a topic I have strong feelings about, Python. A common question I get from students and experienced colleagues is “What analysis environment do you use?”. Where I work most people use either IDL/Envi or Matlab for raster data analysis. These are good packages, with many advanced capabilities, but they can be restrictive. IDL or Matlab code can be difficult to move from system to system or share with others because both environments require licenses that can be quite expensive. That is particularly a problem if you are…