Posts

GIS Programming Module 5: Exploring and Manipulating Data

Image
The lab assignment for module 5 focused on applying data exploration and manipulation. The core of the assignment involved automating several geoprocessing tasks to streamline data management. This was primarily achieved by first establishing a new geodatabase, a central repository for all geospatial data, and then programmatically populating it with existing feature classes from a designated data folder. This initial data handling laid the groundwork for subsequent analysis and ensured a clean and organized workspace for the module's objectives. A key aspect of the data manipulation in Module 5 involved extracting specific information from a feature class and structuring it for further use. This was accomplished by employing a search cursor to iterate through records and selectively retrieve attributes like city names and populations, specifically focusing on "County Seat" cities in New Mexico. This targeted data extraction was then used for populating a Python dictionar...

GIS Programming Module 4: Geoprocessing

Image
In Module 4, we explored geoprocessing in ArcGIS Pro, focusing on how Python can automate GIS tasks. Geoprocessing in ArcGIS Pro refers to the framework and tools used for processing and analyzing geographic data. It allows users to perform operations like data conversion, spatial analysis, and data management tasks. Essentially, it transforms geographic data, taking an input, performing an operation, and producing a new output dataset. For the lab in module 4 assignment there were two main parts. First, I used ModelBuilder to create a visual workflow. This model clipped soil data selected specific areas and then erased those areas from a basin. ModelBuilder is a good way to see how geoprocessing tools connect. See the results below. Model  Model Runs Successfully Results  Second, I wrote a Python script in an ArcGIS Pro Notebook. This script processed hospital data by adding XY coordinates, creating buffers, and then dissolving those buffers into a single feature. Key aspects...

GIS Programming Module 3: Debug & Error Handling

Image
 In module 3 we covered debugging and error handling. Debugging and error handling are important aspects of writing code in python. Debugging involves identifying and resolving errors in the scripts you write. Error handling focuses on potential issues and managing them during runtime.  In our lab assignment we got some hands-on experience debugging and error handling three different scripts. For the first, we were given a script with the task to identify and fix two errors. This involved examining the code for logical flaws or syntax mistakes. Once the errors were identified I ran the code to make sure that the errors had been fixed and that there were no more errors. The complexity increased for the next two scripts.  The objective of the second script was the same, identify the errors or exceptions so that the code could run properly. The second script was more challenging due to a file path error. The file path was inaccurate in the script and needed to be corrected i...

GIS Programming Module 2: Python Fundamentals

Image
    Module 2 in GIS Programming was focused on the fundamentals of Python. For the reading we covered chapter 4 of Paul A. Zandbergen's Python Scripting for ArcGIS Pro. This chapter was incredibly long and dense. The sheer number of concepts that have to be memorized is vast and complicated.  Once the reading portion of module 2 was completed I started on the lab portion of the module. In the lab we created a script using the concepts from chapter 4 in the textbook. The script began by taking my full name as a text string. It then processes this string to separate the individual names into a list of words. From this list, the script specifically identifies and prints out the last name, showcasing basic string and list manipulation techniques. The second part simulated a simple dice game involving a predefined set of players. For each player, the script calculated a unique target score based on the length of their name. It then generated a random "dice roll" for them. The ...

GIS Programming Module 1

Image
       In module 1 for GIS Programming, we primarily covered Python Environments and flow charts. Covering the first two chapters of Paul A. Zandbergen's Python Scripting for ArcGIS Pro  was a large amount of reading primarily focused on IDE's in Python as well as some basic information about Python. IDE's (Integrated Development Environments) are software applications that provide comprehensive tools for software development, which includes a code editor and other tools.       Our first Lab was extremely basic yet very helpful. Using Python we were tasked with uploading a .py file and running it through IDLE Shell Python. Once executed this action created files for each module of this course in the S:\drive. While this was very simple it was a great example of the practical application for someone like me.       Below is a flow chart for a question in the lab process summary. Flow charts are visual diagrams that use symbo...

Module 6: Isarithmic Mapping

Image
  In module 6 we focused on Isarithmic mapping. Isarithmic mapping uses lines (isolines) to link points of equal value for continuous data like temperature or rainfall across a map. The pattern and spacing of these lines visually represent the distribution and rate of change of the phenomenon.  The lab for module 6 was quite interesting. We used data from PRISM to complete this lab. PRISM is a group out of Oregon State University that generates detailed maps of monthly and annual climate conditions like precipitation and temperature. It works by combining specific data points with a base grid, such as elevation data or a 30-year climate average. This approach is very effective in mountainous areas because it accounts for how terrain influences weather patterns. Monthly maps are created first, and then annual temperature maps are derived by averaging these monthly values, while annual precipitation maps are calculated by adding the monthly totals. As you can see when viewi...

Module 5: Choropleth

Image
 In module 5 we covered Choropleth maps. A choropleth map is a thematic map which uses variations of color to represent quantitative data in a geographical area. For the lab we created an choropleth map which showed population density in European countries along with the percentage of the population that consumed wine. I utilized greens on a light gray backing to emphasize the data the map is intended to portray. everything is up front and the important elements are noticed right away.  I had a hard time with this one primarily due to labeling and symbology. I wanted to do all my labeling and placement through the label properties within the feature layers however this ended up causing me to waste lots of time and became extremely aggravating. Eventually I ended up having to remove labels and add them through the layout function in Arc Pro. As for the symbology, I never could figure out how to adjust my symbology in a way that it was very clear and placed where I wanted it. De...