Service area analysis
What is a service area?
With the ArcGIS Network Analyst extension, you can find service areas around any location on a network. A network service area is a region that encompasses all accessible streets (that is, streets that are within a specified impedance). For instance, the 5-minute service area for a point on a network includes all the streets that can be reached within five minutes from that point.
Service areas created by Network Analyst also help evaluate accessibility. Concentric service areas show how accessibility varies with impedance. Once service areas are created, you can use them to identify how much land, how many people, or how much of anything else is within the neighborhood or region.
Finding the network-based service area follows the same workflow as other network analyses.
Service area analysis layer
The service area analysis layer stores all the inputs, parameters, and results of a service area analysis.
Creating a service area analysis layer
You can create a service area analysis layer from the Network Analyst toolbar by clicking Network Analyst > New Service Area.
When you create the service area analysis layer, it shows up in the Network Analyst window, along with its six network analysis classes—Facilities, Lines, Polygons, Point Barriers, Line Barriers, and Polygon Barriers.
The service area analysis layer also appears in the table of contents as a composite layer that is named Service Area or if a service area with the same name already exists in the map, Service Area 1, Service Area 2, and so on. There are six feature layers, which have default symbology that can be modified in their respective Layer Properties dialog boxes.
Service area analysis classes
An overview of each class and descriptions of their properties are provided in the following sections.
Learn more about network analysis classes
Facilities class
This network analysis class stores the network locations that are used as facilities in service area analysis. The Facilities feature layer has three default symbols: Located, Unlocated, and Error. You can modify the symbology of the Facilities layer in the Layer Properties dialog box.
When a new service area analysis layer is created, the Facilities class is empty. It is populated only when network locations are added into it. At least one facility is necessary to create a service area.
Facility properties
Input field |
Description | |||
---|---|---|---|---|
ObjectID |
The system-managed ID field. |
|||
Shape |
The geometry field indicating the geographic location of the network analysis object. |
|||
Name |
The name of the network analysis object. |
|||
Attr_[Impedance] (for instance, Attr_Minutes, where Minutes is the impedance for the network) |
This property stores the value of impedance for the facility; it is sometimes called the delay impedance. Adding a value to this property reduces the reach of the service area. For example, if you are finding the service area for three facilities using drive time as impedance, the property Attr_DriveTime can be used to store the amount of time spent at the facility. For example, when calculating service areas that represent fire station response times, Attr_DriveTime can store the turnout time, which is the time it takes a crew to don the appropriate protective equipment and exit the fire station, for each fire station. Assume Fire Station 1 has a turnout time of two minutes and Fire Station 2 has a turnout time of three minutes. If a 5-minute service area is calculated for both fire stations, the actual service area for Fire Station 1 would be three minutes (since two of the five minutes would be required as turnout time). Similarly, Fire Station 2 would have an actual service area of only two minutes. |
|||
Breaks_[Impedance] (for instance, Breaks_DriveTime, where DriveTime is the impedance for the network) |
You can store different polygon break values for each service area facility in the Breaks_[Impedance] property. Given two facilities, this means you can generate 5- and 10- minute service area polygons for one facility and 6-, 9-, and 12-minute polygons for another facility. The value specified in the Breaks_[Impedance] property overrides the Default Breaks analysis layer setting. If no value for the Breaks_[Impedance] property is specified, service area polygons are generated for the facility based on the Default Breaks setting. |
|||
Network location fields
|
Together, these four properties describe the point on the network where the object is located. |
|||
CurbApproach |
The CurbApproach property specifies the direction a vehicle may arrive at and depart from the facility. If the curb approach is confined to one side of the vehicle, it could further limit the reach of the service area. There are four options for the CurbApproach value:
|
Input/Output field |
Description |
---|---|
Status |
This field is constrained by a domain of values, which are listed below (their coded values are shown in parentheses).
After a solve operation, the status can be modified using one of the following status values:
|
Polygons class
The polygons network analysis class stores the resultant service area polygons. As with other feature layers, its symbology can be accessed from the Layer Properties dialog box of the feature layer.
When a new service area analysis layer is created, the Polygons class is empty. It is populated only when the analysis layer is solved. Once the service area is computed, the polygons are stored in the feature layer and are listed on the Network Analyst window.
Polygon properties
Output field |
Description |
---|---|
ObjectID |
The system-managed ID field. |
Shape |
The geometry of the polygon, which is stored internally. One influential factor in determining the shape of the output polygon is whether Use Hierarchy is checked at solve time. Be aware that if hierarchy is used, the polygon may overlap some lower-order roads that can't truly be reached within the given distance, travel time, or other break impedance. |
Name |
The name of the service area polygon is based on the name of the associated facility and the break range; for instance, Graphic Pick 1: 0.0 – 5.0 would represent a polygon that covers all traversable edges within five minutes from the facility, Graphic Pick 1. |
FacilityID |
The unique ID of the associated facility. |
FromBreak |
The lower bound of the polygon's break range. |
ToBreak |
The upper bound of the polygon's break range. |
Lines class
The Lines class stores the resultant service areas as linear features and represents the network edges that can be reached within the given impedance. Lines are a truer representation of a service area than polygons since the service area is based on measurements along the network.
Service area lines are not generated by default during a service area analysis; you can choose to generate them. Check Generate Lines on the Line Generation tab of the service area analysis layer's Layer Properties dialog box.
The service area lines feature layer can be symbolized in the same manner as other line feature layers.
Line properties
Output field |
Description |
---|---|
ObjectID |
The system-managed ID field. |
Shape |
The geometry of the line, which is stored internally. |
FacilityID |
The unique ID of the associated facility. |
FromCumul_[Impedance] (for instance, FromCumul_Miles or FromCumul_Minutes) |
This field contains the cumulative cost of the path from the facility to the beginning of this line feature. The impedance of the adjacent junction at the beginning of the line is included in this value. This field is generated for the impedance attribute and any accumulation attributes. |
ToCumul_[Impedance] (for instance, ToCumul_Miles or ToCumul_Minutes) |
This field contains the cumulative cost of the path from the facility to the end of this line feature. The impedance of the adjacent junction at the end of the line is excluded from this value. This field is generated for the impedance attribute and any accumulation attributes. |
SourceID |
Each service area line traverses a feature from a network source feature class. This field specifies the unique ID of the source feature class the traversed feature is a part of. The SourceID field is only present if Include Network Source Fields is checked before solving. The Include Network Source Fields check box is on the Line Generation tab of the Layer Properties dialog box. |
SourceOID |
The ObjectID of the underlying source feature that is traversed by the service area. The SourceOID field is only present if Include Network Source Fields is checked before solving. The Include Network Source Fields check box is on the Line Generation tab of the Layer Properties dialog box. |
FromPosition |
Specifies where along the underlying source feature the service area line begins.
The FromPosition field is only present if Include Network Source Fields is checked before solving. This check box is on the Line Generation tab of the service area analysis layer's Layer Properties dialog box. |
ToPosition |
Specifies where along the underlying source feature the service area line ends.
The ToPosition field is only present if Include Network Source Fields is checked before solving. This check box is on the Line Generation tab of the service area analysis layer's Layer Properties dialog box. |
Point, line, and polygon barriers
Barriers serve to temporarily restrict, add impedance to, and scale impedance on parts of the network. When a new network analysis layer is created, the barrier classes are empty. They are populated only when you add objects into them—but adding barriers is not required.
Barriers are available in all network analysis layers; therefore, they are described in a separate topic.
Service area analysis parameters
Analysis parameters are set on the Layer Properties dialog box for the analysis layer. The dialog box can be accessed in different ways:
Learn more about opening the network analysis Layer Properties dialog box
The Analysis Settings tab
The following subsections list parameters that you can set on the analysis layer. They are found on the Analysis Settings tab of the analysis layer's Layer Properties dialog box.
Impedance
Any cost attribute can be chosen as the impedance, which is accumulated while determining the service area. For instance, choosing a Minutes attribute results in service areas based on time.
By choosing a traffic-enabled cost attribute and specifying a time of day and date when the service area should be calculated for, the resulting service area accounts for the variable traffic speeds.
Restrictions
You can choose which restriction attributes should be respected while solving the analysis. In most cases, restrictions cause roads to be prohibited, but they can also cause them to be avoided or preferred. A restriction attribute, such as Oneway, should be used when finding solutions for vehicles that must obey one-way streets (for instance, nonemergency vehicles). Other common restriction attributes include height or weight limits that prohibit some vehicles from traversing certain roads or bridges; hazardous materials restrictions that hazmat drivers need to completely bypass or at least try to avoid; and designated truck routes that truck drivers should try to follow. You can choose which restriction attributes should be respected while solving the analysis. (You can further specify whether the elements that use the restriction should be prohibited, avoided, or preferred in the Attribute Parameters tab.)
Unlike other solvers, the service area solver was purposely designed so that elements can't be avoided or preferred using restriction attributes because doing so would generate unusual results. The service area solver temporarily changes restriction attributes that avoid elements so they prohibit elements instead. Also, the solver temporarily ignores restriction attributes that prefer elements so that the elements aren't given any special preference. When you solve an analysis and attempt to use restriction attributes that avoid or prefer elements, a warning message is provided that informs you of how the restrictions were interpreted for the service area analysis.
Default Breaks
The extent of the service area to be calculated is specified with the Default Breaks text box. For instance, a default break of 10 creates service areas of 10 units (for instance, minutes or miles) from the facilities. The unit is determined by the cost attribute chosen for the Impedance property.
The Default Breaks property is used when a facility's Breaks_[Impedance] value is null. Suppose you have two facilities, A and B, for which you want to find service areas using DriveTime as the impedance. Facility A has a Breaks_[Impedance] (in this case, Breaks_DriveTime) value of 3. Facility B has no value for its Breaks_DriveTime property. When you find the service area with a default polygon break of 5 minutes, Facility B will have a 5-minute service area, whereas facility A will have a 3-minute service area.
The default polygon breaks parameter assigns breaks to facilities that do not have individual break values assigned (stored in the Break_[Impedance] property).
Multiple polygon breaks can be set to create concentric service areas. For instance, if you wanted to find 2-, 3-, and 4-minute service areas for the same facility, you would enter 2 3 4 in the Default Polygon Breaks text box (the numbers 2, 3, and 4 should be separated by a space).
Use Start Time
Use Start Time, in conjunction with the Time of Day and Day of Week or Specific Date properties, lets you specify when the service area starts from or finishes at the facility.
Note that specifying a start time doesn't require traffic-enabled cost attribute; yet, if the network dataset includes traffic data, the solver creates time-dependent service areas. This allows you to see and analyze how a facility's service area changes throughout the day and week. For instance, an 8:30 a.m. service area for a facility will be smaller than a 10:00 p.m. service area for the same facility if traffic is slower in the morning than in the evening.
Time of Day
The value you enter here represents the time you want the service area to start from or end at the facility. (The value you specify for the Direction property, which is explained below, determines whether Time of Day is a start or end time.)
The time you specify in Time of Day must be associated with a date. You can choose between entering a floating day (Day of Week) or a calendar date (Specific Date).
Specific Date
For a calendar date, you provide the day, month, and year that the Time of Day value is associated with.
Day of Week
For a floating day, you can choose Today or any day of the week (Sunday through Saturday) relative to the current date. Floating days enable you to configure an analysis layer that can be reused, without having to remember to change the date.
You can solve up to six days ahead relative to the current date when choosing Day of Week.
Using a start time with traffic data and time zones
If you use a time-based impedance attribute or accumulate attribute, the start/end time and date refer to the time zone of the edge or junction that the facility is located on.
This means that when you set a start/end time for a service area analysis that has facilities in different time zones, each facility's service area is solved using the same local time, but they are solved for different universal coordinated time (UTC) times. For example, if there is a facility in the eastern time zone and one in the central time zone, and the analysis is solved using traffic data for 8:00 AM today, both facilities' service areas are solved for 8:00 AM local time. But since their time zones are one hour apart, the facility in the eastern time zone is solved one hour earlier than the facility in central time.
Because of this temporal mismatch, the service area solver cannot solve analysis layers that have facilities in different time zones when generating nonoverlapping polygons, merged polygons, or nonoverlapping lines. However, it does support solving service areas with overlapping lines under these conditions.
Direction
You can choose to create a service area by accumulating impedance in the direction away from or toward the facility. On a network with one-way restrictions and different impedances based on direction of travel, this would result in different service areas. The direction you should choose depends on the nature of your service area analysis. The service area for a pizza delivery store, for example, should be created away from the facility since pizzas are delivered from the store to the customer. Alternatively, a hospital should choose the opposite direction since the urgent part of the trip for an incoming patient is going to the hospital, not returning home afterwards.
The Direction setting affects how Network Analyst interprets the time and date you specify for the Use Time properties.
- If Direction is set to Away From Facility, the time and date indicate when the service area starts from the facility.
- If Direction is set to Towards Facility, the time and date indicate when the service area finishes at the facility.
If there is any service time at a facility (that is, the facility's Attr_[Impedance] property has a positive value), the service time is included in the results immediately before the finish time when travel is toward facilities, or immediately after the start time when travel is away from facilities.
U-turns at Junctions
Network Analyst can allow U-turns everywhere, nowhere, only at dead ends (or culs-de-sac), or only at intersections and dead ends. Allowing U-turns implies the vehicle can turn around at a junction and double back on the same street.
Use Hierarchy
If the network dataset has a hierarchy attribute, you can use the hierarchy during the analysis. The benefit of a hierarchical analysis is that service area polygons are generated much faster than a nonhierarchical analysis. The drawback, however, is that they tend to be less accurate.
In a hierarchical service area analysis, the solver prefers higher-order edges to the lowest-order edges. This means that if a facility is located on a local road (the lowest level in a hierarchy), the solver spans out on the local roads in that area, but it tries to step up the hierarchy to secondary and primary roads. Once on secondary and primary roads, the solver ignores local roads throughout the rest of the service area. Mainly because of this hierarchical approach, nonhierarchical service areas tend to be superior in quality to their hierarchical counterparts.
You should also take the following points into consideration when choosing between hierarchical and nonhierarchical service areas:
- Hierarchical service areas only generate polygons, not lines.
Uncheck the Generate Lines check box, which is in the Line Generation tab.
- Hierarchical service areas only generate generalized polygons, not detailed polygons.
In the Polygon Generation tab, under Polygon Type, choose Generalized.
- The hierarchical service area solver doesn't trim polygons.
Even if you check the Trim Polygons check box in the Polygon Generation tab, the solve won't trim the service area polygons.
Ignore Invalid Locations
This property allows you to ignore invalid network locations and solve the analysis layer from valid network locations only. If this option is not checked and you have unlocated network locations, the solve may fail. In either case, the invalid locations are ignored in the analysis.
The Polygon Generation tab
Generate Polygons
This option is checked by default. Unchecking it allows you to calculate service areas without generating polygons. (You can check the Generate Lines check box on the Line Generation tab to create service area lines instead of, or in addition to, polygons.)
Polygon Type
You can choose to create quick, generalized polygons or detailed polygons.
- Generalized—Generalized polygons are generated quickly and are fairly accurate, except in the fringes. The generalizing of polygons may result in islands of unreached elements being covered.
- Detailed—Detailed polygons model the service areas more accurately and thus may result in islands of unreached areas. Expect detailed polygons to take noticeably longer to generate than generalized polygons.
- Trim Polygons—The polygons containing the network edges at the periphery of the service area can be further trimmed to be within the specified distance of these outer network edges. By default, this value is 100 meters.
If your data is of an urban area with a gridlike network, the difference between generalized and detailed polygons would be minimal. However, for mountain and rural roads, the detailed polygons may present significantly more accurate results than generalized polygons.
Multiple Facilities option
There are three options available for generating polygons for multiple facilities:
- Overlapping—This option creates individual polygons for each facility. The polygons can overlap each other.
- Not overlapping—This option creates individual polygons that are closest for each facility. The polygons do not overlap each other.
- Merge by break value—This option joins the polygons of multiple facilities that have the same break value.
Overlap Type
You can choose to create concentric service area polygons as disks or rings.
- Rings do not include the area of the smaller breaks. This creates polygons going between consecutive breaks.
- Disks are polygons going from a facility to a break. If you create 5- and 10-minute service areas, then the 10-minute service area polygon will include the area under the 5-minute service area polygon as well as the area from the 5-minute to the 10-minute break.
Exclude Sources
The option to exclude source feature classes from service area generation is available for service area analyses on multimodal networks. The geometries of features in excluded edge network sources are omitted from all service area polygons.
For example, while creating a drive time service area in a multimodal network, you should choose to exclude the rail lines from polygon generation so as to correctly model where a vehicle could travel (because an automobile cannot travel on rail lines). If the rail sources are not excluded, then rail lines that are not traversed could create unreached areas in the service area polygon.
Excluding a network source from service area polygons does not prevent those sources from being traversed. Excluding sources from service area polygons only influences the polygon shape of the service areas. If you want to prevent traversal of a given network source, you must create an appropriate restriction when defining your network dataset.
The Line Generation tab
Generate Lines
The Generate Lines check box provides the ability to create service area lines based on the features that fall within the specified impedance. This box is unchecked by default.
It's not possible to generate lines when Use Hierarchy is checked. If Use Hierarchy and Generate Lines are both checked when the solve process is initiated, an error is returned and the solve fails.
Generate Measures
Check this check box to create measures for your service area lines. This adds linear referencing information to the output lines to aid in the usage of service area lines for functions such as dynamic segmentation for events.
Split Lines At Breaks
Check this check box to split every line that intersects a break into two lines.
Include Network Source Fields
Adds the SourceID, SourceOID, FromPosition, and ToPosition values of the input feature that is traversed by the service area edges. This makes it easy to join the results of the service area lines to the original source data.
Overlap Options
You can choose to have your lines overlap or not overlap.
If you choose Overlapping, and if two facilities have service area lines that are coincident, there are two features there, one for each facility's service area line. If you choose Not Overlapping, then there is only one service area line, and it is associated with the closest (least impedance) facility.
The Accumulation tab
Under the Accumulations tab, you can choose cost attributes from the network dataset to be accumulated on the service area line objects. These accumulation attributes are purely for reference; the solver only uses the cost attribute specified by the analysis layer's Impedance parameter to calculate the service area.
For each cost attribute that is accumulated, two fields are added to the output lines: FromCumul_[Impedance] and ToCumul_[Impedance], where [Impedance] is replaced with the name of the accumulated cost attribute.
You might want to solve an analysis using a distance-based impedance attribute and accumulate a time-based cost attribute. The results of this kind of analysis are based on distance, but they also specify how long it would take to reach a portion of the service area. Furthermore, you can determine this temporal information more accurately by setting a start or end time and accumulating a time-dependent cost attribute to account for dynamic traffic speeds.
The Network Locations tab
The parameters on the Network Locations tab are used to find network locations and set values for their properties.