Weather For Horse Shows Across the U.S. – A Demonstration of Solving a Spatial Problem with Python
Problem Description
Traveling and competing at a horse show requires exhibitors to prepare for many potential inclement weather conditions. Being prepared for inclement weather can make an exhibitors trip to a show safer and much more pleasant then not being prepared. To assist show exhibitors, a program was developed that plotted horse shows within a user selected time period and output an .html document indicated severe weather conditions that may occur during those shows.
Analysis Procedures
The program was divided into 6 different modules that each performed a specific task. Logic for the program was: 1) Get inital variables, set workspace, and check that the values chosen by the user fall under the guildelines of the program, 2) download and unzip data, 3) geoprocess the downloaded and extracted data, 4) create a horse show class, 5) create map/s and export it/them to a .png file, and 6) write HTML code. The initial variable that was gathered was input by the user and was a time period up to 7 days in the future. From there, forecasted weather conditions were downloaded from the Climate Prediction Center’s GIS site that can be accessed at http://www.cpc.ncep.noaa.gov/products/GIS/GIS_DATA/. The last dataset that necessitated downloading was horse shows listed on the United State Equestrian Federation’s website. These can be seen at https://www.usef.org/compete/competitions.
The program was designed so that executing one script would call and run all the other modules. Creating the final output in HTML format was done for easy inclusion in a website and to ensure ease of opening the file across different work stations.
Results
Figure 1 shows the output created from the horse show weather program. It shows two maps where the left map indicates precipitation hazards such as heavy rain or snow and the right map shows non-precipitation hazards like extreme heat or cold. Listed below the map are the horse shows that will occur within the user specified time period and the hazardous weather types that could be experienced.
Figure 1. The above image is a screen capture of the HTML document produced running the horse show weather program.
Reflection
This project required gathering data from multiple online sources, analyzing the data and producing two maps showing expected weather hazards for a user selected time period. The project was completed by creating several scripts and importing them into a main Python program. This approach required that a predetermined logical sequence to solving the problem be completed prior to writing any code. This organization methodology has continued to be a useful project management technique. Writing this program was a good experience in not only programming in Python but also project management.