Analyzing and creating GIS data using Python programming. Josh Foery, JR Franks, Connor McMillan



Similar documents
University of Arkansas Libraries ArcGIS Desktop Tutorial. Section 4: Preparing Data for Analysis

Cookbook 23 September 2013 GIS Analysis Part 1 - A GIS is NOT a Map!

Tool User Guide DATA PREPARATION TOOL USER GUIDE A.1 INTRODUCTION A.2 INSTALLATION. A.2.1 Minimum System Requirements

Note: Hands On workshops are Bring Your Own Laptop (BYOL), unless otherwise noted. Some workshops are Bring Your Own Mobile Device(BYOD).

FCC Management Software Field Manager PRO 360

SUMMER SCHOOL ON ADVANCES IN GIS

2 Working with a Desktop GeoDatabase

ESRI Technical Certification Overview. Amy Daniels Instructor, Greenville Tech

NATIONAL CLIMATE CHANGE & WILDLIFE SCIENCE CENTER & CLIMATE SCIENCE CENTERS DATA MANAGEMENT PLAN GUIDANCE

A Geographic Information Systems (GIS) Hazard Assessment Application for Recreational Diving within Lake Superior Shipwrecks

Exploring GIS Integration Options for SAP BusinessObjects

Introduction to GIS.

How To Write An Nccwsc/Csc Data Management Plan

Mapping Mashup/Data Integration Development Resources

Information visualization examples

Introduction to the ArcGIS Data Model and Application Structure

Regional and Other Geospatial Education Opportunities

How To Develop A Gis Based College Information System

Network Analysis with Python. Deelesh Mandloi

INTRODUCTION TO ARCGIS SOFTWARE

Introduction to ArcView 3.2a

4.4 Table Joins. Exploring Student Populations Joining Excel Table Data to an Attribute. Cherie Aukland Sandy Stephenson

Creating a File Geodatabase

Using GIS to Develop a Control Map and Database

NetCDF and HDF Data in ArcGIS

Cookbook for Importing Point Information into a Polygon Shapefile using ArcGIS9

Steve Ansari *, Stephen Del Greco, Brian Nelson, and Helen Frederick NOAA National Climatic Data Center, Asheville, North Carolina 2.

Web and Mobile GIS Applications Development

Basics on Geodatabases

Multidimensional Marine Environmental Data Conversion and Visualization Using Python and GIS

Open Source Desktop GIS Solutions for the Not-So Casual User

ABSTRACT INTRODUCTION OVERVIEW OF POSTGRESQL AND POSTGIS SESUG Paper RI-14

HELCOM Data and Map Service. User Manual

PART 1. Representations of atmospheric phenomena

Converting GIS Datasets into CAD Format

Some programming experience in a high-level structured programming language is recommended.

1. Abstract. 2. The Problem / Need for the Program

GIS III: GIS Analysis Module 1a: Network Analysis Tools

Syllabus AGET 782. GIS for Agricultural and Natural Resources Management

GUI application set up using QT designer. Sana Siddique. Team 5

Spatial Database Support

Mississippi Private Schools 2015

Mapping Mashup/Data Integration Development Resources Teaching with Google Earth and Google Ocean Stone Lab August 13, 2010

Census Data: Access, Mapping and Visualization

An Esri White Paper August 2010 Product Library in Esri Aeronautical Solution: Enabling Seamless Product, Data, and Document Management

Development and Implementation of the OpenLR Map Interface for Shapefiles

INTRODUCTION to ESRI ARCGIS For Visualization, CPSC 178

GEOGRAPHIC INFORMATION SYSTEMS CERTIFICATION

GIS III: GIS Analysis Module 2a: Introduction to Network Analyst

ADWR GIS Metadata Policy

SAP BW - Excel Pivot Chart and Pivot Table report (Excel)

An Esri White Paper October 2010 Esri Production Mapping Product Library: Spatially Enabled Document Management System

GIS Databases With focused on ArcSDE

ESRI and Xplore Technologies 2008 Mobile Government Demonstration Project Grant Program Final Report

Topology. Shapefile versus Coverage Views

Introduction to GIS software

Raster to Vector Conversion for Overlay Analysis

My City Map Viewer Glossary, 2.1

Choosing the right GIS framework for an informed Enterprise Web GIS Solution

Virginia Commonwealth University Rice Rivers Center Data Management Plan

RESPONSE TO GIS SERVICES RFP. 1. What version of ArcGIS software are you using? If it is not the latest, is there a plan to upgrade?

ArcGIS Workflow Manager: An Overview

ArcGIS online Introduction Module 1: How to create a basic map on ArcGIS online Creating a public account with ArcGIS online...

A GIS helps you answer questions and solve problems by looking at your data in a way that is quickly understood and easily shared.

INFORMATION SERVICES AZ--SM SMART ART

A GIS PRIMER ON HOW TO ILLUSTRATE SPATIAL DATA AND INFORMATION GENERATED THROUGH NATIONAL FOREST INVENTORIES

A Tutorial for New Users of the Marine Data Model. Alyssa Aaby, Dawn Wright Oregon State University

Request for Qualifications November 2007 GIS Migration and Modeling Page 1 TABLE OF CONTENTS. 1.0 Overview. 2.0 General Information

GIS. Digital Humanities Boot Camp Series

ArcGIS Server and Geodatabase Administration for 10.2

GEO 425, Spring 2012 LAB 3: Introduction to Web Map Services

A Geospatial Approach for Environmental Justice Reviews. Rachel Turney-Work

SUMA K4205 GIS for Sustainability Management. Instructor Information: Dara Mendeloff GIS Specialist, CIESIN

Government 1009: Advanced Geographical Information Systems Workshop. LAB EXERCISE 3b: Network

Creating Geospatial Metadata. Kim Durante Geo4Lib Camp

On-campus and fully online distance learning Full-time and Part-time. PgCert/PgDip/MSc Geographic Information Systems (GIS)

Getting Started With LP360

Enterprise GIS Solutions to GIS Data Dissemination

Esri Training Apply what you learn to your job now

GIS Introduction to Geographic Information Systems Last Revision or Approval Date - 9/8/2011

Spatial Data Analysis Using GeoDa. Workshop Goals

Review of Best Practice in Road Crash Database and Analysis System Design Blair Turner ARRB Group Ltd

Government 1008: Introduction to Geographic Information Systems. LAB EXERCISE 4: Got Database?

SWAMP DATA MANAGEMENT PLAN

GEOGRAPHIC INFORMATION SYSTEMS Lecture 20: Adding and Creating Data

ArcGIS Reference Document

ERDAS PRO600. A state-of-the-art package for 3D feature collection and editing

Technical Appendix: Data Submittal Technical Requirements

City of Tigard. GIS Data Standards

MetroGIS Project Proposal Template Version 1.0

Summer Project Report. Fingerprint Based Attendance System

MULTIPLE CHOICE FREE RESPONSE QUESTIONS

WISKI. Quality Assurance for Hydrometric Network Data as a Basis for Integrated River Basin Management. 11 th July 2005

- Python. Get Python from and install on your machine. - py2exe. Get py2exe from

ArcScan Tutorial. Copyright Esri All rights reserved.

From GPS Data Collection to GIS Data Display A Walk-Through Example

GIS FOR RESOURCE PROFESSIONALS

Big Data and Analytics: Getting Started with ArcGIS. Mike Park Erik Hoel

Export Server Object Extension and Export Task Install guide. (V1.1) Author: Domenico Ciavarella ( )

Installation Guide of the Change Management API Reference Implementation

Transcription:

Analyzing and creating GIS data using Python programming Josh Foery, JR Franks, Connor McMillan

Introduction In the digital age, modern companies and organizations have acquired vast quantities of geospatial data to suit their needs and operations. Frequently, however, these companies lack an efficient method of storing and referencing such a large amount of data. One efficient solution to this problem is computer programming. For this assignment, we used the Python suite (version 2.7) to create a simple program that allows a potential user to locate geospatial data within a large database. Our final program directs the user through four subsequent steps. The first step was to direct the user to specify a directory or geodatabase containing the geospatial data they are searching for. After the geodatabase is specified by the user, the next step of the program finds the extents of all the files within the specified directory or geodatabase. After the extents are found for each file, the user is prompted to create a new shapefile showing the extent of each file, and including information such as the name of the file and the file types as attributes. Lastly, after the new shapefile is created, and stored in the specified directory or geodatabase, the user is prompted to enter in a coordinate (in latitude and longitude), so that the program can return the names and types of all the files that cover the area specified by the user coordinates. Creating the program s source code required the utilization of multiple Python libraries. One of the main libraries used extensively was ArcPy, a library created to work seamlessly with the ArcGIS suite. Among its primary functions were to help the user locate a desired geodatabase, find the extents of all files within the specified geodatabase, and to create a new shapefile to be stored within the geodatabase. In addition to ArcPy, another critical component to the program was Tkinter. This library allows the program to create and use an interactive graphical user interface (GUI) that organizes each step of the program, allowing the user to perform each step in a user-friendly work environment. We also needed tkfiledialog, which allows the user to open or save a new file to a directory or geodatabase; this was a crucial step in the program that allows the user to save their new shapefile to their geodatabase or directory. An additional module used in the program is sys, allowing system-specific parameters and functions to be accessed by the user for use in the program. We were unsuccessful in integrating object

oriented to create our GUI. However, object oriented programming was added to the program to organize and store spatial data while the program was running. Flow Chart of Program with GUI Screenshot

Methodology Image 1: The code for steps 1 and 2, including the code for the GUI as well as the results

Image 2: The code for step 3, including the code for the GUI and the output window

Image 3: The code for step 4, the GUI as well as the program output (shapefile extents)

Conclusion Ultimately, our output source code successfully performs each initial task that we sought to achieve, making it a viable option for actual use by companies and organizations. This code allows an individual to 1) select their own directory or geodatabase, 2) determine the extents of each file, 3) create a new ArcGIS shapefile, and 4) query this new shapefile to determine which existing files cover the area of the output data. Some improvements that could be made in our program include 1) improving functionality within the GUI, 2) creating a loop option at the end of the program (providing the option to create reference and create additional data), 3) expanding the program s capabilities to include points and lines as well as polygons, and 4) adding additional object oriented programming within the GUI. Finally, this project taught us how to integrate several Python functions and libraries into one master code that could potentially serve as a primary asset to companies and organizations working with geospatial data.

Appendix Provided below is a copy of our source code: