13
Version_05Mar2015 1 Creating River Networks in ArcGIS Prepared by Thomas J. Ballatore, Ph.D. Director, Lake Basin Action Network (LBAN) Affiliated Scientist, Center for Ecological Research, Kyoto University Visiting Researcher, International Lake Environment Committee (ILEC) Foundation Please send questions and comments to [email protected] Purpose of this Tutorial This tutorial provides a step-by-step guide for creating a river network using ArcGIS software. It uses the Lake Biwa drainage basin as an example but the techniques presented here are fully applicable to the basins you may be working on in your own countries. Checklist of Prerequisites Completion of “Delineating Lake Drainage Basins in ArcGIS” tutorial. Installation and activation of ArcGIS (version 10.0~10.2) including Spatial Analyst extension. Internet access. Step 1. Creating a new map with the appropriate layers Because you may have done more work with Biwa.mxd after completing the “Delineating Lake Basins in ArcGIS” tutorial, your map may look different than when we finished, so let’s start a new map from scratch. Step 1.1. Open ArcMap. Step 1.2. Immediately save a new, blank map as “Biwa_rivers.mxd” in the folder C:\GIS\Basins\Biwa Step 1.3. Click the add data button and add the following data (or whatever your respective files are called): SWBD_Final.shp and LakeBiwa.shp from C:\GIS\Basins\Biwa\SWBD basin4.shp, Biwa_out1.shp, acc4, dem3, slope3 and shade3 from C:\GIS\Basins\Biwa\SRTM Step 1.4. Create a new folder called Rivers inside C:\GIS\Basins\Biwa so that you have C:\GIS\Basins\Biwa\Rivers Step 1.5. Based on the skills you developed in “Delineating Lake Drainage Basins in ArcGIS”, you should be able to change the layer display properties and layer

Creating River Networks in ArcGIS 10.2.2 05Mar2015 River... · Therefore, that is the value I will use for the first iteration. Step 3.1. In the ArcToolbox, go to Spatial Analyst

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Creating River Networks in ArcGIS 10.2.2 05Mar2015 River... · Therefore, that is the value I will use for the first iteration. Step 3.1. In the ArcToolbox, go to Spatial Analyst

Version_05Mar2015 1

Creating River Networks in ArcGIS Prepared by Thomas J. Ballatore, Ph.D. Director, Lake Basin Action Network (LBAN) Affiliated Scientist, Center for Ecological Research, Kyoto University Visiting Researcher, International Lake Environment Committee (ILEC) Foundation Please send questions and comments to [email protected]

Purpose of this Tutorial This tutorial provides a step-by-step guide for creating a river network using ArcGIS software. It uses the Lake Biwa drainage basin as an example but the techniques presented here are fully applicable to the basins you may be working on in your own countries.

Checklist of Prerequisites

¨ Completion of “Delineating Lake Drainage Basins in ArcGIS” tutorial. ¨ Installation and activation of ArcGIS (version 10.0~10.2) including Spatial

Analyst extension. ¨ Internet access.

Step 1. Creating a new map with the appropriate layers Because you may have done more work with Biwa.mxd after completing the “Delineating Lake Basins in ArcGIS” tutorial, your map may look different than when we finished, so let’s start a new map from scratch.

Step 1.1. Open ArcMap.

Step 1.2. Immediately save a new, blank map as “Biwa_rivers.mxd” in the folder C:\GIS\Basins\Biwa

Step 1.3. Click the add data button and add the following data (or whatever your respective

files are called): • SWBD_Final.shp and LakeBiwa.shp from C:\GIS\Basins\Biwa\SWBD • basin4.shp, Biwa_out1.shp, acc4, dem3, slope3 and shade3 from

C:\GIS\Basins\Biwa\SRTM

Step 1.4. Create a new folder called Rivers inside C:\GIS\Basins\Biwa so that you have C:\GIS\Basins\Biwa\Rivers

Step 1.5. Based on the skills you developed in “Delineating Lake Drainage Basins in ArcGIS”, you should be able to change the layer display properties and layer

Page 2: Creating River Networks in ArcGIS 10.2.2 05Mar2015 River... · Therefore, that is the value I will use for the first iteration. Step 3.1. In the ArcToolbox, go to Spatial Analyst

2

ordering to arrive at the following (or something close to it). Note I have zoomed in to the “basin4.shp” layer’s extent.

Step 2. Inspecting the Flow Accumulation raster If you are lucky, you, your organization, or someone else has already made a reliable river network for the lake basin you are interested in. Usually, these are shapefiles based on georeferenced tracings from paper maps. They can also be derived from the classification of high-resolution remotely-sensed images. Additionally, they may be more direct tracings like we did in Google Earth for the Lake Biwa outlet river, Biwa_out1.shp. This tutorial assumes you do not have such a complete river network already available in GIS-ready form. Therefore, we use a technique that relies on the results of the Flow Accumulation tool to estimate where rivers are likely to be. This technique works well in steep terrain (and in areas with rainfall over a certain amount). The technique performs less well in flat areas, and fails in wet, flat areas where large rivers form distributaries. Naturally, it cannot capture human interventions like the construction of canals that defy natural elevation gradients. Overall, for the Lake Biwa case, you will probably be surprised at how well the elevation in the SRTM elevation data (and that information alone!) can reveal where natural rivers occur.

Step 2.1. Make sure that the layer acc4 is toggled on.

Step 2.2. Right click on acc4 and choose Properties.

Step 2.3. In the Symbology tab, change Stretch Type to Histogram Equalize as below and click OK.

Page 3: Creating River Networks in ArcGIS 10.2.2 05Mar2015 River... · Therefore, that is the value I will use for the first iteration. Step 3.1. In the ArcToolbox, go to Spatial Analyst

3

You will see something like the following. Notice a number of “lines” that gradually become lighter and lighter as one moves towards the lake and then downstream out of the lake.

Page 4: Creating River Networks in ArcGIS 10.2.2 05Mar2015 River... · Therefore, that is the value I will use for the first iteration. Step 3.1. In the ArcToolbox, go to Spatial Analyst

4

Step 2.4. Turn off the SWDB_final layer.

Step 2.5. Make sure the Biwa_out1.shp layer is toggled on.

Step 2.6. Right click on Biwa_out1 and select Zoom to Layer.

Step 2.7. Open Biwa_out1 layer’s Properties, go to Symbology and choose “River” and

change the width to “2”, you will see something like the following:

Page 5: Creating River Networks in ArcGIS 10.2.2 05Mar2015 River... · Therefore, that is the value I will use for the first iteration. Step 3.1. In the ArcToolbox, go to Spatial Analyst

5

Step 2.8. Zoom into the area I have marked with a yellow circle (you won’t have this circle on your map!). This is the area where the outlet from Biwa turns sharply west.

I have added some notation to label four cells with numbers 1, 2, 3 and 4 as follows:

If you use the Identify tool in the Tools toolbar and click the cell labeled 1 (with Identify from: acc4), you should get this:

Page 6: Creating River Networks in ArcGIS 10.2.2 05Mar2015 River... · Therefore, that is the value I will use for the first iteration. Step 3.1. In the ArcToolbox, go to Spatial Analyst

6

Clicking on cells 2, 3 and 4 reveals 561338, 567395, and 6053, respectively. The numbers represent the number of upstream cells that drain into the given cell. The more cells upstream, the more likely a given cell will contain a river, and for the cells with very high accumulations, the rivers are likely to be quite wide. Cell 1 has no other cells that drain into it and is certainly not a river. Cell 3 represents a confluence of Cells 2 and 4 (plus perhaps a few others from the south). Using this flow accumulation raster to estimate where rivers are is, therefore, a technically simple process. However, we need to decide how many cells must drain into a given cell for the later to become a “river”. This is *not* an easy question to answer. Nevertheless, we will make a few assumptions and through trail-and-error, along with observations of rivers in remotely-sensed images, develop a river network that is sufficient for our purpose.

Step 2.9. Optional. Use the identify tool to test various cells in the acc4 raster to demonstrate the above points to your satisfaction.

Step 3. Creating a River Network based on Flow Accumulation My first guess at the number of cells required for a river is usually based on how I want to display rivers on my map. I will zoom into a far upstream reach of one of the more obvious “rivers” in the flow accumulation. I will get near to the basin line and use the identify tool to see the acc4 values for the very light gray colored areas of my target river. In the Lake Biwa case, I get values around 5000. Therefore, that is the value I will use for the first iteration.

Step 3.1. In the ArcToolbox, go to Spatial Analyst Tools | Map Algebra | Raster Calculator and open the tool.

Step 3.2. Enter the following formula

Con("acc4" >= 5000,"acc4")

Step 3.3. Set the Output raster as acc4_5000 and save it in C:\GIS\Basins\Biwa\Rivers The dialog should look like this:

Page 7: Creating River Networks in ArcGIS 10.2.2 05Mar2015 River... · Therefore, that is the value I will use for the first iteration. Step 3.1. In the ArcToolbox, go to Spatial Analyst

7

Remember spacing is very important here. The “Con” command is a “Conditional” command that says “If the values of acc4 are greater than or equal to 5000, then output a new raster of acc4 with those values only, if not, leave the given cells no data”. After clicking OK, you should get a raster called acc4_5000 that is not very clear if you are zoomed out to the basin4 layer scale. Zooming in a bit on the southeast portion of the basin, and turning acc4 off, reveals the following (with the default, difficult to see color being what is shown below):

It seems a value of 5000 was actually pretty good at capturing the largest rivers but many of the smaller streams that enter the southern lake were not captured. Let’s try it again with a lower threshold.

Page 8: Creating River Networks in ArcGIS 10.2.2 05Mar2015 River... · Therefore, that is the value I will use for the first iteration. Step 3.1. In the ArcToolbox, go to Spatial Analyst

8

Step 3.4. In the ArcToolbox, go to Spatial Analyst Tools | Map Algebra | Raster Calculator and open the tool.

Step 3.5. Enter the following formula

Con("acc4" >= 1000,"acc4")

Step 3.6. Set the Output raster as acc4_1000 and save it in C:\GIS\Basins\Biwa\Rivers This should reveal a more fully developed but not overly crowded raster. Let’s use this one.

Next, we need to convert the acc4_1000 raster into an actual river network with stream orders and attractive display properties.

Step 3.7. Go to ArcToolbox | Spatial Analyst Tools | Hydrology | Stream Order and open the tool.

Step 3.8. Use the settings and file names shown below (the “so” in acc4_1000_so reminds me this is Stream Order. Rasters are limited to 13 characters so the names are sometimes not very descriptive). Note that dir4 is not a layer in the current map so you need to select it from the icon next to the Input flow direction raster field.

Page 9: Creating River Networks in ArcGIS 10.2.2 05Mar2015 River... · Therefore, that is the value I will use for the first iteration. Step 3.1. In the ArcToolbox, go to Spatial Analyst

9

You will get a raster with 5 randomly colored stream orders. Some are hard to see in the screenshot below but you can tell from the Layer symbology that there are 5 there:

Next, we will convert this raster into a feature that preserves the stream ordering.

Step 3.9. Go to ArcToolbox | Spatial Analyst Tools | Hydrology | Stream to Feature and open the tool.

Step 3.10. Enter the following information.

Page 10: Creating River Networks in ArcGIS 10.2.2 05Mar2015 River... · Therefore, that is the value I will use for the first iteration. Step 3.1. In the ArcToolbox, go to Spatial Analyst

10

Step 3.11. Turn off the acc4_1000 and acc4_1000_so layers. Also, remove acc4_5000 from the Table of Contents.

Step 3.12. Double click on rivers_acc4_1000, go to the Symbology tab under Layer Properties and display it as “river” for the time being. It should look something like this:

Note two things:

1. rivers_acc4_1000 is a feature (shapefile) so it appears at the top of the map, above all other layers. This is the default for ArcGIS when adding new features. Because of this, we can see the “rivers” inside the lake which appear as straight lines. At first, this may appear odd but when you consider what flow accumulation does in the lake where elevation is constant (81m in this case) and where flow direction is very uniform, this makes sense. However, it doesn’t look very attractive so we should move this layer under Lake_Biwa and/or SWBD_final.

2. If you open the attribute table for rivers_acc4_1000, you will see there are 2373 records. Each one has a unique ArcID. The GRID_CODE varies from 1 to 5,

Page 11: Creating River Networks in ArcGIS 10.2.2 05Mar2015 River... · Therefore, that is the value I will use for the first iteration. Step 3.1. In the ArcToolbox, go to Spatial Analyst

11

representing the “stream order” we calculated earlier. It is important to note that this is may not be the actual stream order than a stream ecologist or hydrologist would assign because we have not checked the field conditions in detail. However, for our purpose, it allows us to next display the higher “stream order” streams with a different (wider, darker) symbol. This results in a more attractive map.

Step 4. Symbolizing the River Network

Step 4.1. Double click on rivers_acc4_1000 to open Layer Properties. Go to the Symbology tab. You will note that the default display is Feature | Single symbol

Step 4.2. Click on Categories and choose Unique Values. In the Value Field, select GRID_CODE, and then choose Add All Values. You will get 5 different values which are symbolized with random colors and the same width:

Step 4.3. Double click on each of the 5 symbols (labeled 1 through 5) and choose “river” for their symbol but with “Width” increasing from 0.5, 1.0, 1.5, 2.0 and 2.5 as stream order increases from 1 to 5. The settings for the first one should look like this:

Page 12: Creating River Networks in ArcGIS 10.2.2 05Mar2015 River... · Therefore, that is the value I will use for the first iteration. Step 3.1. In the ArcToolbox, go to Spatial Analyst

12

Step 4.4. Make sure the SWBD_final layer and Lake_Biwa layer are turned on and placed on top of rivers_acc4_1000.

Step 4.5. Also, turn off slope3, dem3, and shade3.

Step 4.6. Zoom to the basin4 layer extent to see the following:

Page 13: Creating River Networks in ArcGIS 10.2.2 05Mar2015 River... · Therefore, that is the value I will use for the first iteration. Step 3.1. In the ArcToolbox, go to Spatial Analyst

13

Step 5. Improving the Results There are many changes you could make. One obvious change is to use a similar color for the rivers as for the lakes and perhaps using a different color for the ocean. You could also use gradually darker colors for increasing stream orders. It would also perhaps be wise to “prune” some of the very smallest rivers to reduce a bit of the clutter when viewing the map at the basin level. Which ones to delete (by opening the Editor toolbar, starting editing in the rivers_acc4_1000 space and by selecting features to remove and clicking delete) depends on your sense of what looks good. It is important to remember that each of the segments in this river network is not necessarily a river so it seems to me acceptable to selectively prune as you see fit (as long as you let the users of your map know how you calculated the rivers). You could also export the river network to Google Earth as a KML file (ArcToolbox | Conversion Tools | To KML | Layer to KML) and observe how closely each “river” follows the actual river course. This step would ideally be done around the time we first made acc4_1000 and before all the symbols were changed. If some key rivers were far off course, you could digitize new paths in Google Earth, import them to ArcGIS and burn them and make a new DEM. This is probably necessary in flat areas and depends on how accurately you wish to portray the river network. Additionally, you could indicate artificial water flows such as canals by tracing them in Google Earth and inserting them as separate shapefiles from the rivers_acc4_1000 file. They could be symbolized differently to represent their special origin. In the Biwa case, many of the main rivers have been highly channelized and can actually appear to be above the surrounding land in the SRTM data. In this case, the Flow Accumulation derived river network does not perform very well, especially in the areas of low slope. Overall, the rivers_acc4_1000 shapefile is a fairly good first cut at defining a river network. I would probably not use it without checking the actual rivers and after making some tracing in Google Earth and river burns in SRTM.