Friday, March 18, 2016

Data Gathering

Goals and Objectives: The goals of this assignment were to gain experience downloading data from the Internet and importing it to ArcGIS, joining data, project the data, which come from different sources, into the same projected coordinate system, building a geodatabase, and using Python to perform automated tasks. This assignment in particular focuses on Trempealeau County, WI. The objectives for this lab are as follows:

1) Download data from numerous different websites
2) Import this data and join related tables
3) Write a Python script to project, clip, and load all data into a geodatabase
4) Write a technical report about the data sources and their accuracy

General Methods:

The data were downloaded from the following websites:

i. U.S. Department of Transportation -- provides spatial data for transportation networks along with related attribute information and metadata documentation
http://www.rita.dot.gov/bts/sites/rita.dot.gov.bts/files/publications/national_transportation_atlas_database/index.html

ii. USGS National Map Viewer -- provides topographic maps; we got land cover and elevation maps from here
http://nationalmap.gov/about.html

iii. USDA Geospatial Data Gateway -- provides high resolution vector and raster map layers; we got crop land cover data from here
https://gdg.sc.egov.usda.gov/

iv. Trempealeau County Land Records -- provides land record data; from here we downloaded the Trempealeau County file geodatabase
http://www.tremplocounty.com/tchome/landrecords/

v. USDA NRCS Web Soil Survey -- provides soil data and maps; we got Trempealeau County soil data from here
http://websoilsurvey.sc.egov.usda.gov/App/HomePage.htm

The downloaded datasets came in the form of zip files which I then extracted to a working folder for the assignment. From here I was able to start utilizing the data and writing the Python script.

Data Accuracy

Results:

1) A locator map for Trempealeau County (in red) within Wisconsin (see Figure 1):
Figure 1

2) Rail line network in Trempealeau County (see Figure 2):
Figure 2
3) Land cover map of Trempealeau County (see Figure 3):
Figure 3
4) Elevation map of Trempeauleau County with rail lines (see Figure 4)
Figure 4
5) Soils map of Trempeauleau County (see Figure 5); this map is so detailed at a such a large scale that when zoomed out to the scale shown below, a large amount of dark grey (which has no value on this map) appears where there would otherwise be distinguishable soil types when zoomed in further:
Figure 5
Conclusions:

While the datasets appear to be accurate, it's important to be aware of the fact that they may not be 100% accurate.



   

Friday, March 11, 2016

Python Scripts

Background

Python is a computer language that is used to automate computing tasks, which can help make work easier, more accurate, and faster. It is an important skill to develop as a GIS analyst to learn how to write script. Python is great for beginners and the syntax is simple to understand compared to other scripting programs.

Demo 1

Goals: The goals of python demo 1 included learning about GIS automation and its purpose, connecting to different servers in order to access and work with its data, learning about Python and what a Python Snippet is, and learning how to enter code and perform geoprocessing tasks in PyScripter.

Results: See figure 1 below

Figure 1: Python demo 1 script
Demo 2

Goals: The goals of demo 2 were to expand on what we learned in demo 1 by learning how to edit a script template, import system modules, setting up a script and a tool with parameters, and printing a statement.

Results: See figure 2 below

Figure 2: Python demo 2 script

Demo 3

Goals: In continuation of what we learned in demos 1 and 2, in demo 3 we learned how to set a variable in a script. A variable in this case represents an object or a value that the computer will store to be used later on.

Results: See figure 3 below

Figure 3; Python demo 3 script

Exercise 5: Sand Mining Suitability Project

Goal: The goal of this section of the project was to write a Python script that would project, clip, and load rasters into a geodatabase that were downloaded from the internet. The rasters include land cover types, elevation, and crop land cover.

Results: See figure 4 below

Figure 4: Python Exercise 5 script

Exercise 7: Network Analysis Part 1 - Data Preparation 

Goal: The goal of this part of the exercise was to write a script to select the mines that would be used in our analysis later on. The script would use queries and select by location to find the mines that met the following:

  • The mine is active
  • The mine must not have a rail loading station on-site
  • The mine is farther than 1.5 kilometers from a rail line
Results: See figure 5 below

Figure 5: Exercise 7 Part 1 Python script