Table of Contents
- Necessary Imports
- Connect to your GIS
- Get the data for analysis
- Defining the project boundary
- Identify the area within three miles around the state park.
- Create the study area boundary
- Create a layer of highway features within the study area
- What is suitable cougar habitat?
- Identify the area that are suitable cougar habitat using the criteria defined by the experts from the state park
- Identify areas that are suitable cougar habitat using the criteria defined by the experts from DFW
Cascadia state park is a recreational paradise for camping, picnicking and hiking in the state of Oregon, US. Many visitors usually hike from the park to Soda Creek Falls on trails or old logging roads that continue into the Willamette national forest. It is about a mile and half from park. Research by US forest service indicates that the national forest is a habitat of approximate 6,400 cougar's population. With increase in cougar population, there is a tremendous increase in sightings by people. Park officials are therefore concerned about the safety of their visitors. On the other hand, they don't want to alarm potential visitors as this would mean reduced funding for the park in next year's state budget.
In view of this, a technical committee is set up, with wildlife experts from three agencies (State Park, National Forest, state's Department of Fish and Wildlife) to undertake a study of cougar populations in and around the park.
This sample presents an approach to using ArcGIS API for Python to help committee identify potential cougar habitat. The process uses suitability analysis to identify areas that meet the specified criteria.
Through this notebook, we will demonstrate the utility of a number of spatial analysis tools including
Further, based on the results of the analysis, the committee can identify large habitat areas for various management goals - conservation, management of wildlife, recreation, and so on.
%matplotlib inline import pandas as pd import matplotlib.pyplot as plt from IPython.display import display from datetime import datetime as dt from arcgis.gis import GIS from arcgis.features.use_proximity import create_buffers from arcgis.features.manage_data import dissolve_boundaries from arcgis.features.manage_data import extract_data from arcgis.features.find_locations import derive_new_locations
gis = GIS('home')
Search the GIS for feature layer collections by specifying the item type as 'Feature Layer Collection' or 'Feature Layer'. We will specify our search by specific tag as cougar_habitat_case_study.
items = gis.content.search('cougar_habitat_case_study', 'Feature Layer')
for item in items: display(item)
We will use the first item for our analysis. Since the item is a Feature Layer Collection, accessing the layers property will give us a list of FeatureLayer objects.
cougar_item = items
The code below cycles through the layers and prints their names.
for lyr in cougar_item.layers: print(lyr.properties.name)
state_park vegetation slope subwatersheds highways streams
Let us assign a variable to each of these feature layers.
state_park = cougar_item.layers vegetation = cougar_item.layers slope = cougar_item.layers sub_watershed = cougar_item.layers highways = cougar_item.layers streams = cougar_item.layers
Let's plot the state park on map for visualization.
m1 = gis.map('oregon') m1