An Example of ESRI's ArcMap Using Network Analyst with Statistical Analysis of Population Census Data

This technical Geographic Information System (GIS) essay will determine locations for proposed fire stations using Network Analyst and Census Data to determine the maximum population and structure coverage within a 3 ½ minute response time polygon, within the fictional City of Gotham.


1) To establish the coverage areas of each Fire District within the City of Gotham , based upon a 3.5 minute response time. This will be calculated using the Cities Roads shapefile in which speeds have been assigned to different road codes, and has been imported into a feature dataset within a geodatabase. Network Analyst will be used to determine the 3.5 minute polygon.

2) To calculate the number of dwellings, structures, seniors, and population served by each Fire District, using the most recent (2001) Census data.

3) To calculate the areas within the City covered by redundant Emergency Fire service. These areas will also be examined to determine the Census data of importance.

4) To propose new Fire District scenario’s that would cover growing urban areas. The City can afford only one new Fire Station, but two possibilities will be explored. These shall be examined to maximize the City’s coverage based upon the Census data and to minimize redundancy with current Fire District coverage. The City is also considering one new Fire Station and the relocation of an existing one.

5) To map and graph the results in a manner that is easily understood by the general public and City Council members.


The Creation of the Geodatabase

Open ARCMAP and add the city boundary and streets. Using ARCCATALOG create a new geodatabase in a work directory (call it Gotham ). Right click on the geodatabase and create a new featureclass called Roads. Within ARCMAP open the Roads ATTRIBUTE TABLE and ADD NEW FIELDS, one being Speed, which is a double and is determined by giving a value to each road code (rd_code). The next field added (a short integer) is called Minutes. As this is in metric, the calculation used is Minutes=((Length)*60)/((Speed)*1000). If using feet and miles the calculation would be Minutes=((Length)*60)/((Speed)*5240)

In the directory structure in ARCCATALOG, right click on the roads shapefile and export it into the Gotham geodatabase, into the Roads featureclass and name it Streets.

Right click on the Streets in the Gotham geodatabase and create a new network dataset.

Close ARCCATALOG and open ARCMAP. Press ADD DATA and add the road network called Streets_ND from within the geodatabase. To access it go into the geodatabase, into Roads, into Streets, and select Streets_ND.

Address Locator

In ARCCATALOG create a new address locator and load it with the roads shapefile, setting the appropriate fields for right and left addresses and to and from directions. Copy this into your work folder. In ARCMAP, click on TOOLS, and select GEOCODING, and add the address locator. haThe addresses and Facility Numbers of the Cities Fire Stations have been entered into an Excel table and saved as a CSV file. This file is changed from a CSV file to a TXT file.

In ARCMAP, click TOOLS, click GEOCODING, find the address locator and load the TXT file of the Fire Stations into it. The Fire Stations are now a shapefile within ARCMAP. Alternatively the Fire Stations could be digitized on the map. There are advantages and disadvantages both ways. Geocoding the location is fast, but the actual location of the building is not found, just the driveway on the street. Also the building address is situated on a percentage match down the street. When digitizing, the actual building location is found, but human error could pinpoint the wrong building. In this case it was geocoded and a 10m offset placed on the addresses to simulate a driveway. Final placement of the Fire Stations was performed in ARCEDITOR.

Network Analyst

In ARCMAP, the NETWORK ANALYST toolbar is accessed (enable the extension, view the toolbar). Open the NETWORK ANALYST WINDOW. Under the drop down menu in NETWORK ANALYST, select NEW SERVICE AREA. In the Network Analyst Window, right click on facilities and LOAD LOCATIONS. Select the Fire Stations as the Input Feature. Set the BREAK TIME to 3.5 Minutes. Click OK. Polygons are created to show the road network within three and a half minutes in all directions from all the Fire Stations.

The next step is to create new shapefiles to represent the coverage of each polygon for each Firehall. Open the ATTRIBUTE TABLE click on the left hand row to select it. Now right click on POLYGONS (in the table of contents) and export the data, naming it appropriately to reflect the facility number (such as FH_1). Repeat this for all Fire Stations.


3.5 minute response time polygons for Fire Stations

Calculating Census Data

Add the current CENSUS data. Add new fields to it. The first will be called new_area and will be a short integer. The second will be called Prop and will also be a short integer. The next three will be doubles, and will be called seniors_new, pop_new, and dwellings_new. These will be calculated shortly to reflect the clipped Census data.

Open ARCTOOLBOX and open the CLIP tool from the EXTRACT toolkit within the ANALYSIS toolbox. Use the newly created District Coverage Firehall (i.e. FH_1) as the clipping feature and clip the CENSUS data. Use a naming convention such as FH_CENS_1 to keep track of the data. Once this has been completed for all fields it is time to calculate the values within the new fields within the ATTRIBUTE TABLE. For this exercise it shall be assumed that dwellings, population, and the number of seniors are evenly distributed within the census tract.

Open the ATTRIBUTE TABLE for the first Firehall District Coverage/CENSUS shapefile. For the first field (new_area), enable ADVANCED calculation and also open the HELP dialog box. In the HELP dialog box is a calculation for area. Copy and paste this into the Calculator and set the new field to equal OUTPUT. Press OK.

For the second field (Prop) the new area is divided by the old area. Press OK.

For the third field, Seniors_new is calculated to equal the seniors field multiplied by the Prop. Press OK.

For the fourth field, pop_new is calculated to equal the population field multiplied by the Prop. Press OK.

For the fifth field, dwellings_new is calculated to equal the dwellings field multiplied by the Prop. Press OK.

Repeat this for all of the Firehall Coverage Districts.

Open an Excel sheet and put the headings, DISTRICT #, SENIORS, POPULATION, DWELLINGS, and STRUCTURES along the top cells. Also create a field for the part of the City not covered by 3.5 minute service (call it outside). By opening each Firehall/census shapefile’s ATTRIBUTE TABLE, and going to the new fields, and right clicking and selecting STATISTICS, the values can be found, SUM is the number to be copied from the STATISTICS into the appropriate Excel field.

The STRUCTURES shapefile is loaded into ARCMAP and SELECT BY LOCATION is used to find the number of structures that INTERSECT the firehall/census district. Keep the STRUCTURES ATTRIBUTE TABLE open and by viewing the number of selected records the number of STRUCTURES is found. Copy this into the appropriate cell in the Excel sheet, and redo this for all firehall/census shapefiles.

MODELBUILDER could be used to simplify many of the previous steps, and shall be used to illustrate the significant savings of time and energy shortly.

UNION all of the firehall/census districts together. Use the ERASE tool to erase the original CENSUS shapefile with the unioned coverage of the 3.5 minute firehall coverage. This resulting shapefile requires five ADDED FIELDS, calculated as previously and added to the Excel sheet. SELECT BY LOCATION to find the number of STRUCTURES within this shapefile.

In Excel, create a graph to plot the results.


Excel sheet of coverage by District, including Structures, Seniors, Dwellings, and Population


Graph illustrating the Excel sheet

Using Model Builder

In ARCTOOLBOX, right click to create a new toolbox. Right click on this and CREATE A MODEL. Click and drag the firehall/census districts onto the model builder. Drag ADD FIELD next. Drag CALCULATE FIELD. Tie these together with the MAGIC WAND. There should now be the firehall/census, going to add field (short integer – called cnt_1, for the number one district, and cnt_2 for the second district, and so on), going to CALCULATE FIELD (value of 1 assigned to the field).

These will all be tied into a UNION box (dragged from the toolbox), from there they go into a DELETE FIELD box. All fields shall be deleted except for the cnt_x field. They then go into another ADD FIELD box (short integer – called ttl_cnt), which then goes into another CALCULATE FIELD box which adds the cnt_x values together in the ttl_cnt field. This willshow which areas of the city are covered by redundant Fire Station coverage. A ttl_cnt value of 1=1 Station, 2=2 Staions. Press the START button.


Model Builder

By accessing the symbology of the newly created shapefile, it can be seen that some areas of the city are within the boundary of up to four firehall’s 3.5 minute service area. Open the ATTRIBUTE TABLE and SELECT BY ATTRIBUTES to locate each area covered by 1, 2, 3, or 4 Fire Stations and export this data to create more new shapefiles. These are called redundant service areas.

The Census data is clipped by each newly created redundant service shapefile. The New_Area, Proportion, New_Seniors, New_Dwellings, and New_Population fields are calculated as previously. Within each clipped Census shapefile the new fields are totaled (Statistics) and entered in an Excel sheet. SELECT BY LOCATION is used to determine the number of structures within each redundant service area.


Redundant Fire station Coverage Yellow=1, Light Blue=2, Dark Blue=3, Red=4

New Fire Stations

ARCCATALOG is used to create new point shapefiles to represent potential locations for new fire stations. The polygons created with the 3.5 minute response time with the current fire stations do not cover the entire city. Two areas are lacking quick response, one being the Northwest portion of the city, and in the Southwest. Both of these areas are experiencing growth and the Cities Official Plan calls for further expansion in these areas. Unfortunately the city can only afford one new station. This exercise gives the city two options for future Fire Station locations. Two fire stations will be added, one for each poorly served location. Once they have been digitized, Network Analyst is used to create 3.5 minute polygons around them, and the Census data is clipped by each, and then fields are calculated (as previously to determine the number of seniors, dwellings, and population within each area). SELECT BY LOCATION is used to determine the number of structures.


Present Fire Station Coverage


Proposed New Fire Stations

After this step another UNION is performed and the redundant areas are exported and also calculated for the same statistics.

Analysis of Findings

Both proposed new Fire Stations achieve maximum coverage with minimum redundancy. Ultimately it will be up to City Council to decide upon the course of action, based upon future anticipated urban growth and budgetary restrictions.

Fire District Coverage

Fire Station Number 1 serves:

22634 Structures

27018 Dwellings

53525 Population

3475 Seniors

Fire Station Number 2 serves:

18676 Structures

19397 Dwellings

40570 Population

3007 Seniors

Fire Station Number 3 serves:

17034 Structures

25076 Dwellings

49181 Population

3625 Seniors

Fire Station Number 4 serves:

17034 Structures

27018 Dwellings

53525 Population

3475 Seniors

Fire Station Number 5 serves:

7716 Structures

9554 Dwellings

25463 Population

1760 Seniors

Fire Station Number 6 serves:

10435 Structures

18192 Dwellings

33912 Population

4290 Seniors

Fire Station Number 7 serves:

13981 Structures

17743 Dwellings

43059 Population

3249 Seniors

Fire Station Number 8 serves:

8528 Structures

9022 Dwellings

24407 Population

2338 Seniors

Fire Station Number 9 serves:

12401 Structures

16929 Dwellings

45997 Population

2767 Seniors

Fire Station Number 10 serves:

9090 Structures

9244 Dwellings

25126 Population

1820 Seniors

Fire Station Number 11 serves:

1607 Structures

892 Dwellings

2482 Population

281 Seniors

Fire Station Number 12 serves:

8085 Structures

8584 Dwellings

22819 Population

2801 Seniors

Fire Station Number 13 serves:

6966 Structures

9008 Dwellings

23057 Population

2010 Seniors

Proposed Fire Station Option #1:

12955 Structures

10953 Dwellings

29640 Population

2346 Seniors

Proposed Fire Station Option #2:

14009 Structures

12192 Dwellings

33045 Population

2555 Seniors



Original Excel Sheet used for Calculations

Fire District Redundant Service Areas

Present Fire District Coverage

Within Areas served by one Fire District Only 62899 Structures 77764 Dwellings 199011 Population 16259 Seniors

Within Areas served by two Fire Districts 28658 Structures 33394 Dwellings 76159 Population 6979 Seniors

Within Areas served by three Fire Districts 9510 Structures 13702 Dwellings 27444 Population 1742 Seniors

Within Areas served by four Fire Districts 331Structures 222 Dwellings 469 Population 52 Seniors

Areas Not Served with 3.5 Minute Response Time 15562 Structures 13450 Dwellings 36912 Population 2754 Seniors

With Proposed New Fire District #1

Within Areas served by one Fire District Only 65480 Structures 79960 Dwellings 205638 Population 16596 Seniors

Within Areas served by two Fire Districts 28790 Structures 34272 Dwellings 76927 Population 7046 Seniors

Within Areas served by three Fire Districts 9529 Structures 13724 Dwellings 27499 Population 1747 Seniors

Within Areas served by four Fire Districts 331 Structures 222 Dwellings 469 Population 52 Seniors

Areas Not Served with 3.5 Minute Response Time 12955 Structures 10953 Dwellings 29640 Population 2346 Seniors

With Proposed New Fire District #2

Within Areas served by one Fire District Only 63718 Structures 77973 Dwellings 200263 Population 16231 Seniors

Within Areas served by two Fire Districts 29520 Structures 35044 Dwellings 78772 Population 7207 Seniors

Within Areas served by three Fire Districts 9510 Structures 13702 Dwellings 27444 Population 1742 Seniors

Within Areas served by four Fire Districts 331 Structures 122 Dwellings 469 Population 52 Seniors

Areas Not Served with 3.5 Minute Response Time 14009 Structures 12192 Dwellings 33045 Population 2555 Seniors

Graphs and Spreadsheets

9.jpg' 10.jpg 11.jpg

Excel sheet of redundantly served areas of the City


Proposed New Fire Stations: Service Areas - Blue=seniors, Red=Dwellings, Yellow=Population, Green=Structures



Current Service: Redundant Areas – number of seniors, dwellings, structures, and population within each redundant area


Proposed new Fire Station #1: Redundant Areas - Blue=seniors, Red=Dwellings, Yellow=Population, Green=Structures


Proposed New Fire Station #2: Redundant areas - Blue=seniors, Red=Dwellings, Yellow=Population, Green=Structures


A potential flaw to this analysis is that the speed is not constant - a basic assumption that response time is determined by speed limits, when in reality Emergency Response vehicles exceed the speed limits. In the street network in the geodatabase, there are other minor discrepancies. For instance, speed is assumed to be constant, but in reality a vehicle speeds up and slows down for intersections and in accordance with traffic and road conditions. It also does not allow for waiting time at red lights. However, in regards to Emergency Service vehicles, they do not stop for red lights and generally maintain a constant speed.

The other assumption is that dwellings and population are evenly dispersed within census tracts, while in reality there are parks and residential areas of differing density. The census data is from 2001, so does not reflect recent urban growth trends.

However this model is used and accepted by the City of Gotham Fire Department as being the best working model available at the present time.

Due to the extremely large number of repetitive calculations, Model Builder can not only save a large amount of time, but also reduce the potential for human error, either in calculating, or in the work flow. One drawback to Model Builder is that when adding fields, the new areas can’t be calculated, as Model Builder does not allow for advanced calculations (such as area calculations).


It is recommended that all current Fire Stations remain open (that there shall be no closures or relocation of current facilities). Although there are areas of redundancy, they are minor.

For instance, the areas served by four Fire Stations amounts to 222 Dwelling Units. Therefore, concentrating on reducing or eliminating these numbers is insignificant.

The areas served by three Fire Stations is composed of a strip 2 kilometres wide from downtown heading north-east for about 5 kiolmetres. This area of the city contains many older buildings, and to attempt relocation based on these numbers will not affect total coverage area. There are also several slivers of three station coverage throughout the city.

The areas served by two fire stations is significant (76159 population, 28658 structures), but relocation of facilities based upon this will result in the expense of relocation of Fire Stations (cost of land, construction, infrastructure) while spreading the present resources over a broader area. The problem with this is that in spreading present resources out farther, larger areas of very low population will be served better, but areas of higher population and greater numbers of structures will be unable to receive fast and rapid response in the event of a three or four alarm fire.

It is in the publics best interest to open a new Fire Station as opposed to relocating a current one. The cost of building a new Fire Station, and relocating a present Fire Station, would make the proposal of two potential new Fire Stations an economical alternative. Seen from the point of view that the City desires to open a new Fire Station, and is considering relocation of an existing one, this report provides two locations for consideration, and puts forth the observation that construction of two new fire stations would equal the cost of the present inquiry.

The net expense from the two new Fire Station proposal is primarily in equipment and manpower. With the current equipment and manpower being relocated to better serve the city, by moving resources within the present Fire Station infrastructure, a more efficient coverage could be achieved.

With two new Fire Stations, the areas of the City not covered would be:

10356 Structures (from 15562 presently)

8327 Dwellings (from 13450 presently)

22110 Population (from 36912 presently)

1841 Seniors (from 2754 presently)

Two new Fire Stations will cover an additional:

5206 Structures

5123 Dwellings

14802 Population

913 Seniors

Although these numbers for the two new Stations combined are not equal to one of the present Fire Stations coverage, it must be remembered that these are areas of residential urban growth and these numbers have increased in reality already from the 2001 Census data. Within ten years these stations will have quadrupled their present coverage statistics.


With Two New Fire Stations: Redundant Coverage


This report recommends keeping all existing Fire Stations. They are paid for, functional, and effectively cover most of the City. Relocation of one station will equal or exceed the cost of building a new one. Two proposed Fire Stations should be constructed to cover areas of planned future urban growth.

Science | Technology

QR Code
QR Code gis_network_analyst_with_census_data (generated for current page)