Planning a Trip to Yellowstone Park:

Consider yourself a very selective traveller! You want to go on a backpack trip into one of the remote parts of Yellowstone National Park, but you don’t want to be bothered by bears and you don’t want to camp in some area that was scorched by the great fires of 1988. And you do not want to be within 5 km of any road. You also want to camp in an Englemann spruce / subalpine fir forest or krummholz at an elevation greater than 9,200 feet. Where in the park can you go?

Plan your trip using ArcGIS. Start up ArcGIS and make sure that Spatial Analyst is turned on. Download the following files and bring them into a data frame either as a feature (vector) layer or grid (raster) layer. Suggested file names are in parentheses:

Yellowstone Park boundary (bnd)
Main Roads (rds)
Bear Management Areas (bma)
1988 Fire Perimeters (fire)
30 m DEM (dem)
Present Vegetation (veg)
(these and other Yellowstone data sets and metadata can be found at the NPS website)

All are zipped, with most in Arc-Info export (*.e00) format. These need to be translated for use in ArcGIS. Do this using Win Zip (or other decompression software) first and then applying the *.e00 translator provided in ArcCatalog (here are the clicking steps: ArcCatalog, View, Toolbars, ArcView 8x Tools, Import from Interchange File .... once there, you can add the *.e00 files in batch to save time). The only tricky part is naming the output file. Make sure that you put the decompressed file somewhere other than the folder that contains the *.e00 file you want to decompress, and check to make sure there are no spaces anywhere in the full path name. Also limit the name of the folder to less than 8 characters, without any spaces

There are many ways to solve the problem using ArcGIS. The steps noted below may not be the best, but they should work.

1. First, start by bringing the park boundary and main roads into the data frame. You will want to make sure these remain at the top of the layers list (i.e., they should sit at the top of the TofC) so you can see them. Make the park boundary (outline) 2.0 units thick.

2. A large area of the park was burned in the summer of 1988. Bring the fire perimeters layer into the data frame and color these a light orange; notice that this  layer is made up of a myriad of small polygons. To make the work later on a little easier, dissolve all the polygons into a single feature. Do this by opening the Toolbox and selecting Data Management, Generalization, and Dissolve. Use the Fire layer as the input and call the output fire_polygon. Remove the old Fire layer from the data frame. Make the the fire_polygon layer orange without an outline. Already you can see there isn’t much of the park that wasn’t burned. Other large areas have bear problems. Bring the bear management areas layer in and use 10% simple cross-hatching without outlines. Be sure that the bear layer lies on top of the fire layer. At this point, turn off (but do not remove) the bear and fire layers.

3. Next, you want to find the areas that have Englemann spruce/subalpine fir (Picea englemanni/Abies lasiocarpa) as a main forest species or krummholz (what is krummholz, anyway?). Bring in the grid that shows present vegetation (veg) and make it active. Raise it to the top of the data frame. By default, all the different vegetation types are shown in a gray scale that depends on the "value" attribute. It is almost impossible to interpret this coverage in its present form.

4. Create a new, simpler raster containing only krummholz and Englemann spruce/subalpine fir.. This can be done a number of ways, but perhaps the easiest will be to use the "Extract by Attributes" tool. First, open the veg raster attributes table. Note the value attribute for all the Englemann spruce/subalpine fir and krummholz codes (9, 10, 34, and 36). Open the Toolbox and go to the Spatial Analyst tool "Extract by Attribute" under the Extraction category. For the "Where", use the SQL button and its dialog box to type the following query:
Value =9 OR Value =10 OR Value =34 OR Value =36 (double click on "Value" and then single click "=" and type in the number and then single click "OR")
This should create a new grid that contains only the vegetation you need. Call the raster krum&spruce. Keep this new raster set and remove the old veg raster layer from the TofC. The new raster shows where krummholz and Englemann spruce/subalpine fir occur in Yellowstone Park.

5. Convert the new vegetation raster set into a polygon shape file called veg_final.shp (Toolbox - Conversion Tools, from Raster, Raster to Polygon) Check the box to simplify the polygons. Remove the old vegetation raster from the TofC when finished. Color this new layer green without an outline.

6. Next, eliminate the areas of Englemann spruce/subalpine fir and krummholz that have either been burned or have bear problems. Do this by using first selecting all of the features in veg_final.shp by right clicking on the file name, then choose "Selection", and then "Select All". This should put a blue "selected" line around ALL of the veg_final.shp features. Next, we want to eliminate all the selected features that lie within the fire layer. Choose "Selection" from the main menu, then "Select by Location", and remove from the currently selected features in "veg_final" that are "contained by" the features in the fire layer. Then "Apply". Do the same thing for the bear layer - unselect the polygons that fall inside bear problem areas. Next, turn the bear and fire layers back on.You'll probably need to clean a few of the polygons that are still selected, but fall within the bear and fire areas .... choose "Selection" from the main menu, the "Interactive Selection Method" and then choose "Remove from Selected Set". Click on the selection icon and click (or click and drag a box) on all the selected polygons that appear within the fire & bear layers. Make sure none of the polygons in the fire and bear areas are selected. If you need to reselect a polygon, click on "Selection", "Interactive Selection Method", and "Add to Current Selection."

7. Next, you want to create a new layer that excludes the areas within fire & bear. Right click on veg_final in the TofC again, choose "Data" and "Export Data" and save the selected features as a shape file called "target_veg". This should provide you with coverage that shows only those areas of Yellowstone Park that have Englemann spruce/subalpine fir and krummholz forest and are generally bear-free and unburned.

8. To select only remote areas, we can put a 5 km buffer around the roads and then exclude the areas of spruce/fir&krummholz that lie within the buffer. Use the tool called "Buffer" that's within "Analysis"  and "Proximity". Set "Dissolve Type" to "ALL". Call the output "buffer_rds.shp". Once you have created this buffer layer, use it together with the selection procedure ("Selection by Location" etc.) used before to eliminate those Englemann spruce/subalpine fir and krummholz patches that are within 5 km of a road. Save the unselected polygons and call this final layer "patches.shp". Remove veg_final, target_veg, and buffer_rds from the TofC.

9. We need to choose areas of this theme that lie at an elevation of 9,200 feet or greater. Bring in the DEM (which is already in ESRI raster format) and then reclassify the raster set into two categories: greater than 9200 and everything else as "NoData" (open the Toolbox, "Spatial Analyst", "Reclass", "Reclassify"). Save the result and by converting it to a simplified polygon shape file called hi_elev_poly. Now create a new shape file that shows polygons where the vegetation is right and the elevation is greater than 9200 feet (use the "Intersection" tool that's found under the "Analysis Tools" group of the toolbox --- "Analysis Tools", "Overlay", "Intersect"). This should result in a map that shows what we're looking for. Call this final_places.shp.

10. Finally, how large an area do these polygons cover? Add a new field to the final_places.shp attribute table. Do this by right clicking on the shapefile name in the ToC and then select "Open Attribute Table". Click on the "Options" button in the lower right and then select “Add Field.” Give the new field a name and then choose the correct variable type and field properties. In ArcGIS parlance, "scale" means the number of decimal places and "precision" means the maximum length of a field. Click "Editor" on the Editor toolbar and click "Start Editing". (Note: you can make calculations without being in an editing session; however, in that case, there is no way to undo the results). Right-click the field heading for area and click "Field Calculator". Check "Advanced" so it is on. Type the following VBA statement (i.e., enter VisualBasic programming code) in the first text box:

Dim dblArea as double
Dim pArea as IArea
Set pArea = [shape]
dblArea = pArea.area

Next, type the variable dblArea in the text box directly under the area field name. Click OK.  The property area returns a field type of double. For best results, your area field should also be a double field type.


TURN IN a map of Yellowstone Park that shows the park boundary, main roads, and the Englemann spruce/subalpine fir/krummholz association that lies above 9,200 feet, exclusive of those areas that burned or have bear problems. Draw a circle around each of these areas and provide the number of acres in each polygon.