GIS networks consist of interconnected lines (known as edges) and intersections (known as junctions) that represent routes upon which people, goods, etc. can travel.
I will be showing you how to do this using 2 methods.
The first one will be done using a road network shapefile and the second one will the done using a feature dataset that contains a road network.
Using Road Shapefile
1. Make sure your road network shapefile has an attribute for drive time, walk time, speed for vehicles, speed for pedestrian, road length which can also be shape length.
2.You will use the fields of the speed for vehicle and pedestrian and the road length to calculate the drive time and walk time of each road in the shapefile. You can do this using the field calculator in ArcGIS but I will not be covering that today.
3.Go to Arc Catalog, and navigate to your working folder, right click on the road shapefile.
4.Click on New Network Dataset.
5.Enter the name for your network dataset or you can leave the default name, click next.
6.Do you want to model turns in this network – Choose Yes and click next.
7.Click on connectivity.
8. Click on End Point which is under Connectivity Policy.
9. It will give you a drop-down, choose Any Vertex, and click OK.
11.How would you like to model the elevation of your network features – The data I am using does not have elevation so I would choose None, the essence of the elevation data is to detect if the road is an overhead bridge or a normal road, this is very import during routing calculation i.e finding the shortest distance to get from point A to B.
12.Specify the attribute for the network dataset – we would create 3 attributes for this network.
- Drive Time
- Walk Time
This are the attribute the network analyst will use to perform calculation for routing purpose, we will choose one of them as the default.
To create the Distance Attribute
- Click on add. I will bring out a pop up.
- Name – You can type in distance
- Units – Choose meters and click OK.
Normally, if we have used a different name other than distance it would have shown an error, we would see that soon, but since we used distance, the Evaluators was set automatically.
To Check the Evaluators, click the Evaluators Button
To create Drive time
- Click on add. I will bring out a pop up.
- Name – You can type in Driving time
- Units – Choose minutes and click OK.
The Driving Time gave us an error, if you place your cursor on the error, it will tell you that the attribute does not have a cost evaluator assigned for an edge source and direction.
To set the Evaluator for driving time, make sure the driving time attribute is highlighted, click on the evaluators button.
For each of the source click on the empty drop-down bellow the Type and choose field,
For each of the source click on the empty drop down bellow the Value and choose Drive_time.
Click Ok. You should be able to create the walk time attribute yourself.
When you are true with creating the walk time attribute, right click on the distance attribute and click on use by default. This means distance will be the default attribute for routing in the network dataset.
14.Do you want to establish driving direction settings for this network dataset – choose yes and click on next.
16.You get a pop up showing the new network dataset has been created, would you like to build it now – Choose Yes.
17.You add the network dataset to the environment.
This is how to create a New Network dataset from a road shapefile.
Using Feature Dataset
1.Right click on the feature dataset, click new and choose network dataset. Make sure your feature classes ( i.e. road network) are inside your feature dataset.
2.Enter the name for your Network Dataset and click next
3.Select the feature that will participate in the network dataset – This is the advantage of using the feature dataset over the network dataset, here you can select more than one feature, for example, you can add roads, rail lines, facilities and modes of transport.
4.You can continue from step 6 of using Road shapefile.
You can download a sample road shapefile below.
Thanks for reading, if you have any questions, ask under the comment section and watch out for the next blog post on how to calculate shortest path between 2 or more points.