Apr 20
With ESRI’s use of Python as their scripting language and the proliferation of open source GIS, Python became one of the required languages for GIS developers and hobbyists alike. What makes Python powerful is well documented throughout the web, but I want to highlight one very important aspects of Python today: Python Modules.
Python Modules are code someone else has written and distributed, in order to make life easier for the rest of us. You may be familiar with the standard modules that come with Python, like math or datetime, but there are numerous more resources out there for the GIS minded developers. I will be discussing some of the modules I find essential in my work apart from the famous ArcGISScripting module by ESRI: GDAL, numpy, NetworkX, xlrd and xlwt. Let’s dive in! Continue reading »
Tagged with: gdal • gdal/ogr • geoprocessing • GIS* Points • GIS* Points • networkx • numpy • ogr • python • python gis • python modules • xlrd • xlwt
Feb 25
Often times people write geoprocessing scripts that others try to incorporate in their work. This is done through modules or packages in Python. This is wonderful when one wishes to share their work, but it can also be bothersome if the module you are loading assumes that there is no geoprocessor loaded. This little script will help you safely load the geoprocessor object, either from an instantiation by the main program, or from scratch.
Continue reading »
Tagged with: arcgisscripting • geoprocessing • python
Feb 11
With the new version of ArcGIS coming out soon (9.4, now 10, tomorrow maybe X), it is nice to revisit the things I would love to see change in the geoprocessor. This is by no means a study on what is missing or what ESRI is doing wrong, but rather what I would like to see in the future. If you have any suggestions, please do write a comment and I will gladly add them to the post (and attribute the addition to you).
Continue reading »
Tagged with: ArcGIS • arcgisscripting • ESRI • geoprocessing • python
Feb 03
After a long delay, it is time for the third installment of understanding the Geoprocessor Programming Model that will deal with the Describe object. If you missed the last two parts, feel free to look at them first (Part 1: understanding what the geoprocessor is, and Part 2: accessing data with the geoprocessor). As always, comments are welcomed and encouraged. Continue reading »
Tagged with: arcgisscripting • describe • ESRI • geoprocessing • python
Oct 19
In the first part of this series I covered access to the geoprocessor and how one can navigate the first part of the diagram of the model. If you are not familiar with the geoprocessor, please have a quick look at that post to understand the geoprocessing model ESRI provides.
In this post I will finish covering the bottom left part of the model that deals with direct access to features and their geometry. In order to do that, we will discuss cursors, features and geometries.
Tagged with: arcgisscripting • ESRI • geoprocessing • python
Oct 16

A question often asked when people venture into the wonderful world of Python Geoprocessing with ESRI is how one can read the programming model they make available on their website. As it may not be easily interpreted when one begins programming, I will do my best to unpack it and explain how one can use it more effectively. All images presented here are extracts from the actual model presented by ESRI on their website.
Continue reading »
Tagged with: arcgisscripting • ESRI • geoprocessing • python
Oct 06
There is been some discussion over the internet about ESRI’s decision to drop Visual Basic for Applications (VBA) support after the ArcGIS version 9.4 release. There are blog entries about why this shouldn’t happen, so I decided it is time to introduce an entry on why it should go, and what you can do about it. Continue reading »
Tagged with: .Net • ESRI • programming • python • VBA • VBA.Net
Aug 19
The geoprocessor object has multiple List methods one can use to retrieve lists of items that it is aware of. Below are examples of the most commonly encountered ones: ListWorkspaces(), ListTables(), ListRasters(), ListFeatureClasses(), ListDatasets() and ListFields().
Continue reading »
Tagged with: geoprocessing • ListDatasets • ListFeatureClasses • ListFields • ListRasters • ListTables • ListWorkspaces • python
Jul 16
There are some fundamental differences between geoprocessing performed in ArcGIS version 9.2 and 9.3. While I will not cover them all in this post, I will attempt to show the most fundamental differences that people seem to encounter more often.
Continue reading »
Tagged with: 9.2 • 9.2 vs. 9.3 • 9.3 • ArcGIS • arcgisscripting • geoprocessing • python
Jun 17
Writing Excel files using Python is quite easy, using the xlwt package. Similar to xlrd mentioned in an earlier post, xlwt allows one to write Excel files from scratch using Python. Continue reading »
Tagged with: data manipulation • excel • excel files • python • write • writing • xlwd