Friday, May 10, 2013

Using Python in ArcGIS


During this, and the previous exercise we explored the use of Python in Arcgis. Python runs on script similar to other programs including Maple and R. We used python to run a loop program that would create concentric 1000 meter buffers out to 5 thousand meters around each mine in Trempealeau County (figure 1), WI. To do this I used the following script.

Fig.1. Mines located in Trempealeau County, WI.
Data used previously, projected in UTM zone 15N


 >>> import arcpy
>>> arcpy.env.workspace = "W:\geog\CHupy\geog491_s13\CAMRENSL\python2"
>>> i = 1
>>> bufdist = 1000
>>> while i <=  5:
...     arcpy.Buffer_analysis("mines2", "mines_buff" + str(bufdist) + ".shp", str(bufdist), "FULL", "ROUND","ALL")
...     bufdist += 1000
...     i+=1
...    
>>> 

This first section of code sets the workspace for python.
>>> arcpy.env.workspace = "W:\geog\CHupy\geog491_s13\CAMRENSL\python2"

The second and third lines of code tell it that each I is 1 iteration and each buffer distance is 1000 units, our projection was in meters so the units are in meters.
>>> i = 1
>>> bufdist = 1000

The next lines of code tell the program to run 5 iterations, run a buffer, what data to use and where to store the output. It also sets the parameters for the tool and finishes with the loop function which reruns the data the specified number (5) times.
>>> while i <=  5:
...     arcpy.Buffer_analysis("mines2", "mines_buff" + str(bufdist) + ".shp", str(bufdist), "FULL", "ROUND","ALL")
...     bufdist += 1000
...     i+=1
...    
>>> 

This type of operation is incredibly time saving versus running Euclidean distance on each individual raster used previously and then reclassifying the rasters. The simple loop script we used to create the buffered mines worked just as well as the multiple step process (figure 2).Using python you could feasibly write script to run all of the data sets with loop buffers (Euclidean and reclass in rasters) within a single batch of script instead of each a series of separate operations. This speeds up the process reducing both computer storage and operating costs. 

Fig.2. buffered mines in Trempealeau County, WI
using Python script to streamline the process.

Monday, April 29, 2013

Suitability and Risk Modeling using Raster Analysis


Goals and Objectives:
There are two main objectives for this lab. The first is to analyze data for several factors which affect sand mining and develop a suitability map based on those factors. The second is to analyze data associated with the risks of sand mining and create map which indicates the levels of risk in any particular area based on those variables. The study area for these projects was Trempealeau County, Wisconsin (figure 1). 

Fig.1. The location of Trempealeau County, Wisconsin, USA. The
west-central portion of Wisconsin has become populated with sand
mining operations in recent years.

Data sets and Sources:
The data used in these analyses were obtained from several sources. Elevation data were obtained from the United States Geological Survey (USGS) National Map Viewer website, http://nationalmap.gov/viewers.html. (national elevation dataset 1/3 arc second). From the USGS website we also obtained data on land cover, both data sets were downloaded for the area of Trempealeau County, Wisconsin. We used the legend located at http://www.mrlc.gov/nlcd01_leg.php to aid in the interpretation of the land cover raster. Data for water table elevation were gathered from http://wisconsingeologicalsurvey.org/gis.htm. Railroad data including the location of railroad terminals were gathered from the National Atlas website at http://www.nationalatlas.gov/. State and county data were obtained from ESRI online, and other data unique to Trempealeau County were obtained from the Trempealeau County geodatabase located in the college system. Data for geologic formations was gathered from wcwis_bg_map on the university system.

Methods:
Suitability model:
I began by starting a new file geodatabase to work in and save all the generated data in. Then opened a new .mxd and saved in to my file. Within the .mxd I set the environments, the workspace and the default workspace to the new geodatabase and in raster analysis the cell size to 30 (the land cover data has this cell size and it is the largest of the data sets) and the mask to a layer containing a polygon of Trempealeau County (TC). We also had to turn on spatial analyst in the extensions in order to use many of the tools. All feature classes were projected the same, NAD 83 UTM Zone 15N prior to any analysis. When possible the feature classes were clipped or extracted down to the TC layer before analysis to minimize the size of the data set. The railroad terminal data set had to be handled at the state level because there were no terminals located within TC. All reclasses were performed in model builder giving us the opportunity to go back and make changes if needed, some of our ranking criteria may not work the best the first time through (figure 2). 

Fig.2. This model was used to reclass each variable and combine
the layers using raster calculator. The suitability model used
raster calculator twice; the first to create a suitability raster and a
second to exclude populated and wetland areas.                 
   
The first of our suitability criteria was elevation. We know that the most suitable sands are the Jordan and Wonowoc formations. On the wcwis_bg_map these formations are colored red and gold respectively. To obtain the elevation ranges of each of these formations we layered the wcwis_bg_map over a seamless USGS topographic basemap. Using the swipe tool we could identify the approximate elevation ranges of each formation. The basemap elevation was in feet so I had to convert the elevations to meters. The Jordan formation ranges from 228.6 to 274.32 meters above sea level and the Wonowoc formation ranges from 320 to 365.76 meters above sea level. Using the TC DEM we ran the contour tool with the contours set at 10 meter intervals simplifying the data set. Then examining the wcwis_bg_map map it was easily recognizable that the Jordan formation covered a much larger area than the Wonowoc so this information was used with elevation information for the sand formations to rank the elevation for suitability. The elevation range containing the Jordan formation was ranked highest, the range containing the Wonowoc formation was intermediate and the rest of the elevation ranges were ranked the lowest. The raster was reclassed as such (figure 3).

The second of our variables was land cover. The land cover raster showed a range of cover types from open to forest to urban areas. This image can be interpreted using the legend from http://www.mrlc.gov/nlcd01_leg.php. To rank these areas I took into account the investment of time and money it would take to clear the land for mining. Heavily forested areas would be the least cost effective areas while open land would be the most cost effective areas to build a sand mining operation. The raster was reclassed using the values from the above legend with all open areas ranked the highest, brush areas ranked intermediate and forested areas ranked the lowest (figure 2).
We also used this data to create a raster that would show all areas of the county that were entirely impractical to mining. These areas would include wetlands and urban areas. I performed a second reclass using the land cover data set. This time I did not rank the data I simply gave all areas not feasible for mining a zero value and all areas, even costly, a value of one. This was used to exclude these areas from our final output, eliminating them from future analysis (figure 3). 

Our third criterion was a sites proximity to a rail terminal for loading and transport of the mined sand. The closer a site is to a terminal the higher the rank for the site. Using the locations of the rail terminals I ran Euclidean distance to determine the distance to any terminal, this had to be done statewide and then extracted down to the TC layer. I then reclassed the distance to divide the county equally into three levels split between two terminals (figure 3).

The fourth variable dealt with the slope of the land. It is much easier to mine flat ground than steep. Using the TC DEM I ran the slope tool set to give slope as a percent. After running slope I ran block statistics with a 3 x 3 pattern to filter through the raster and reduce some of the peppering in the image. The final step was to reclassify the image ranking the steeper slope percentages the lowest and the lower slope percentages the highest (figure 3).

The final variable was availability of ground water. Water usage is extremely high in sand mining operations so the more readily available water is the more suitable the land will be. This data was downloaded as a coverage (eOO file) zipped file. The files were unzipped then imported using the import from eOO tool, then the data could be exported to the geodatabase for use. These data were then projected to match the rest of the data. The data were in feet above sea level; this was different from all of our other data. In the attribute table I added a field and used field calculator to convert the values to meters. Then in using the contour to raster tool, with the newly created field, I converted the data into a raster dataset. The new problem was this data was in meters above sea level, we wanted to know the depth to the water table. By using raster calculator and subtracting the water elevation from the TC DEM we get raster cell values that are the difference between the two, the depth to the water table. This raster was then reclassed into three levels with the deepest water table ranked the lowest and the shallowest water ranked the highest (figure 3).     
  
From these reclasses we obtained several individual rasters showing the rankings for each. We need to combine them to create a single suitability map. Using raster calculator we add each of the individual rasters except the land use exclusion raster (figure 4). The output is a map showing a continuous range of values from a low of five, the number of variables and the lowest value, to fifteen, the number of variables and the highest value. The lowest values on the map indicate those areas that through our analysis are the least suitable for sand mining while those with the highest values are the most suitable. Now we can take this one step further, some of the areas on the map are either urban areas such as towns or cities or are wetlands. These areas are not at all feasible to mine in. Using raster calculator we input the suitability model and multiply it with the land use exclusion raster. The multiplication function will take all of the areas we want to exclude and give them zero values (0 times any number is zero), and will not change the other values (1 times any number is that number). The zero values were then symbolized to show they were not a part of the range of suitability (figure 5).

Suitablity model
Elev. range (MAMSL)
rank
184
228.6
1
228.6
274.32
3
274.32
320.04
1
320.04
365.76
2
365.76+

1
Land cover
rank
11
31
3
41
43
1
51
52
2
71
95
3
Land cover exclude
rank
31
82
1
11
24
0
90
95
0
RR proximity (m)
rank
20466.44
34302.48
3
34302.48
46161.94
2
46161.94
59237.75
1
%slope
rank
0
10
3
10
25
2
25+

1
Water depth (m)
rank
0
15
3
15
50
2
50+

1

   Table.1. These are all of the variables
   used in determining land suitability
   for mining and the reclass rankings 
   within each variable. 

Fig.3. These six variables were used to determine the suitability of an area for
sand mining. Each of these areas has been reclassed to rank the data as low,
medium or high suitability. The urban and wetland areas were reclassed as a
binomial to either include or exclude the data.
Fig.4. This is the result of adding all of the
variable layers together except urban and wetlands.
This analysis gives us a ranked output with values
ranging from 5 the number of variables with
reclass values of 1, to 15 the number of
variables with reclass values of 3. With this
output we can determine which ares are suitable for
sand mining.

Fig.5. This is the result of multiplying the map
in figure 3 with the data layer urban and wetland
which was reclassed with urban/wetland as 0 and
all other areas as 1. The binomial values in the
urban/wetland raster when multiplied with the
previous raster either give us our original
 values (1x'sany_value=that_value); or our exclusionary
 data (0x'sany_value=0). This analysis gives us a
ranked output with values ranging from 5 the
number of variables with  reclass values of 1, to
 15 the number of variables with reclass values of 3
and an area of no data. With this output we can
determine which ares are suitable for sand mining without
being in a developed area or a wetland area.  

Risk model:
For the risk model I again began by starting a new file geodatabase to work in and save all the generated data in. Then opened a new .mxd and saved in to my file. Within the .mxd I set the environments, the workspace and the default workspace to the new geodatabase and in raster analysis the cell size to 30 (the land cover data has this cell size and it is the largest of the data sets) and the mask to a layer containing a polygon of Trempealeau County (TC). We also had to turn on spatial analyst in the extensions in order to use many of the tools. All feature classes were projected the same, NAD 83 UTM Zone 15N prior to any analysis.  Most of the variable data in this section were obtained from the TC database. The feature classes were clipped or extracted down to the TC layer before analysis to minimize the size of the data set. All reclasses were performed in model builder giving us the opportunity to go back and make changes if needed, some of our ranking criteria may not work the best the first time through (figure 6).    

Fig.6. This model was used to reclass each risk variable and combine
the layers using raster calculator.
                                  
The first risk variable was to watersheds in TC. Pollutants entering a stream from a mine located to close could be an ecological disaster. We used a feature class from the TC database called DNR-Hyro_junction. In this feature class there are data on all of the streams in TC including stream type and flow. Through examination of the data I decided to use the primaryflowinwaterperennial classification, this included major waterways that flow year-round. I did not include others as it cluttered the map severely and when we buffer the distance we include many of the lesser streams. I used select by attribute to query out the streams needed and then in selection-created layer from selected features, this layer was saved as layer file then imported into the geodatabase as a feature class. This feature class was run in Euclidean distance to give a range of distances from all points along all of the streams. We used the new raster to reclass into our buffer area, the areas closest to the streams receiving the highest value and those furthest from the streams receiving the lowest values, the breaks were set at 2500 meters and 5000 meters (figure 7).

The second variable is prime farmland; this land is of economic importance to the area and should be avoided if possible.  We used the Prime_Farmland feature class located in the Land feature dataset of the TC database. I selected both classifications of All areas are prime farmland and Farmland of statewide importance and followed the same procedure to make feature classes in the geodatabase. I used the polygon to raster tool to create a raster image then reclass to rank the data. This reclass I ranked the included farmland as a two and all other land as a one. The farm land is important however it is also open and using it might be less destructive than logging off a forested area  (figure 7).

The third risk variable we examined dealt with populated areas. There is great concern with noise and dust pollution from the mines affecting the health of people in urban areas. This data was obtained from the college network and is located in   W:\geog\CHupy\geog491_s13\CAMRENSL\ex5\TrempWebDATA2-4-2013.gdb\Boundaries\Composite_Boundaries. I used the census boundaries because I think they gave the clearest picture of urban populations in the county. I queried out the cities and villages using the MCD column and selecting F which corresponds to cities and villages not townships which are rural areas. I again used the protocol to move the data into the geodatabase where I ran Euclidean distance. The distances are calculated from the perimeters of each of the urban areas. I ran a reclass to rank the distances into three risk subsets with the closest distances ranking the highest. The minimum distance used for this operation was 640 meters. This distance has been determined the minimum for noise pollution and we have adopted it for dust pollution also, the second break was set at 1600 meters  (figure 7).

Along with urban populated areas we were concerned with schools; we dealt with this separately because some schools are not located within populated areas. To gather data on the schools we used the parcels feature class in the TC database. I queried out all properties owned by a school using the statement, "LastName" = 'SCHOOL DIST' OR "LastName" = 'SCHOOL DIST # 5' OR "LastName" = 'SCHOOL DISTRICT' OR "LastName" = 'SCHOOL DISTRICT # 1' OR "LastName" = 'SCHOOL DISTRICT #1' OR "LastName" ='SCHOOL DISTRICT #2' OR "LastName" = 'SCHOOL DISTRICT OF ARCADIA' OR "LastName" = 'SCHOOL DISTRICT OF BLAIR' OR "LastName" = 'SCHOOL DISTRICT OF INDEPENDENCE'. Using this selection and the previous protocol to import the data into my geodatabase for use I then ran Euclidean distance from the edges of the properties and reclassed the raster using the same breaks as populated areas  (figure 7).

Prime recreational areas were our fifth concern. We do not want to locate a mine in an area that is plainly visible to anyone visiting a park our using any of a number of recreational trails in the county. We used both the parks and the trails feature classes from the TC database and ran them in viewshed. It was also not possible to run viewshed from polygon so for the parks I first ran a polygon to feature point tool giving me a point coincident with the center of each of the park polygons. When running viewshed from a single point you get results for that point; however, running viewshed for multiple points or lines as we did here we get a continuous set of values. These values are rankings, the higher the value the more visible an area is from any number of the points used in the viewshed analysis. When the rasters were reclassed those with the highest values were given the highest scores (greatest risk)  (figure 7).

I included one last area that might be of concern, wildlife areas. These areas are important not only to wild life but also for the county’s economy by way of tourism, hunting and more. Using the wildlife areas feature class I imported it into my geodatabase and ran Euclidean distance from the perimeters of the areas; the new raster was then reclassified to show a buffer around the areas with the closest areas being ranked as the highest risk  (figure 7).  

The last step to generate our risk assessment map was to use raster calculator and add each of the layers. The result was a map showing a continuous risk gradient from the lowest scores possible; seven, the lowest risk, to the highest score possible and the highest risk, twenty (figure 8).

Risk assessment model
Streams buffer(m)
rank
0
2500
3
2500
5000
2
5000+
1
Resiential buffer(m)
rank
0
640
3
640
1600
2
1600+
1
School buffer(m)
rank
0
640
3
640
1600
2
1600+
1
Trails.view (VALUES)
rank
500
3936
3
250
500
2
0
250
1
Parks.view (VALUES)
rank
4
20
3
1
4
2
0
1
1
W.life areas buf.(m)
rank
0
800
3
800
1600
2
1600+
1
Farmland
rank
farmland
2
other
1
   Table.2.  These are all of the variables  
   used in determining risk associated 
   with mining and the reclass rankings 
   within each variable.


Fig.7. These seven variables were used to determine the risk involved
 in an area for sand mining. Each of these areas has been reclassed
to rank the data as low, medium or high risk. The prime farmland areas were
reclassed as a medium risk while areas not were considered low.

Fig.8. This is the result of adding all of the
variable layers together. This analysis gives us a ranked
output with values ranging from 7 (low risk, the number of
variables with reclass values of 1) to 15 (high risk, the
number of variables with reclass values of 3). With this
output we can determine which ares are at a high risk
from sand mining operations.

Results and Discussion:

The suitability model shows a large range of variability of suitability of the land in Trempealeau County. There are three areas on the map that stand out with high suitability; the northern most portion of the county, the north central portion of the county and the south central portion of the county. When you look at these areas on the risk model the northern most area of the county is also a high risk area, so this area is not a suitable area for sand mining. The north central region and the south central region of the county both have a reasonably low risk in conjunction with the high suitability. These areas may be candidates for mining operations. Both of these areas are also located reasonably close to railroad terminals which are the main transportation mean of shipping the sand out of the area.

Fig.9. Trempealeau County, WI, sand mining
suitability map.
                                                                         
Fig.10. Trempealeau County, WI, sand mining
risk map.
                                                


Saturday, April 6, 2013

Network Analysis



Background:

Sand mining is done throughout a large portion of the state of Wisconsin. Most of the sand that is mined is transported around the country using rail facilities. However, many of the areas that are being mined are not located at loading facilities. To overcome this, the sand is hauled by truck to local roads to the nearest loading facility. The process of repeated heavy truck traffic may have a negative impact on the local roads increasing the cost of maintenance. Much of the funding for road maintenance comes from local tax payers who drive lightweight vehicles which do not cause much damage, it may be beneficial to know how much of an impact the transportation is having on the roads and be able to assess this cost properly.

Objectives:

The objectives for this exercise were to first, use the sand mine locations we previously geocoded, to gather data through network analysis on the fastest routes from the mines to the nearest railroad terminal. Then, using the distance traveled during transportation from the mines to the facilities, we will be able to project the cost per county associated with the sand transport.

Data:

The data used for the network analysis were, the mines locations, which were geocoded in arcmap from a Google fusion table (https://www.google.com/fusiontables/DataSource?docid= 17nDFI4iUP OdyDOEWU7Vu1ONMiVofa3aWR_Gs-Zk#map:id=3).  Road network data were obtained from an ESRI source (W:\Geog\ESRI\streetmap_na). The data with the location of the railroad terminals was gathered from a shape file located (W:\geog\CHupy\geog491_s13\ex\ex7\railterminals_shp). Other data used in the mapping process were gathered from ESRI online.   

Methods:

To begin, we opened a new arcmap document and saved it to our geodatabase. We then added the street feature classes from the ESRI file, and imported the rail terminal feature class from the department folder to our geodatabase and added it to the map. We also added the geocoded mines to the map. We then had to turn on the network analysis tool and add the toolbar. Using network analysis (NA) we started a new route.  We right click on stops and then click load locations, then loaded our mine locations, we did not change any of the defaults and solved. The program solved for one continuous route to all of the mine sites with a stop at each (figure 1). This is not what we were looking for.  Without closest facilities this output does not give us any of the usable information we need to complete the task. So we removed this from the display.

Fig.1.The results of our first attempt, using stops, yielded
a map with a continuous route to all of the mines, this is
not the result we were looking for so it was not used further.
The routes are overlaying the streets_na layer.

We then added a new closest facilities layer. In this layer we loaded the mines as facilities and the rail terminals as incidents and solved. This gave us an output containing a route from each of the mines to the nearest rail facility (figure 2). Some students may have had issues with this running each facility to the nearest mine but mine did not. This output gives us the information we need to complete the analysis.

Fig.2.The results of our second attempt using closest facility
gave us the results we were looking for. we now have a route
from each of the sand mines to the closest rail facility. The
routes are overlaying the streets_na layer.

If we want to store the steps we used to generate the data needed we can use model builder (MB) (figure 3). So we opened model builder saved our model in a new toolbox within our geodatabase. We had to open the NA tool set  Then we added the closest facility to the model, by editing the tool we added the streets layer and left the defaults. We did set the model to run as travel to facility. Then we had to add the add locations tool to the model. We connected this to the closest facility output and edited it to use our mine locations as input locations, sub-layer incidents. We then added a second add locations tool and used the rail terminals and facilities, we connected this tool to the first add locations tool output. We added the solve tool to the model and ran the model. The model ran all possible routes from the incidents (mines) to the facilities (terminals) using the road network, the model was set to look for the fastest time. Although some of the outputs may appear to go out of the way these were the fastest routes, this was not done using distance.  We could then add the results to the display and we had the output we needed to continue. We exported our results as a feature class to our geodatabase. To do this we added the select data tool to the model and connected it to the previous output, within the tool there is a child data option, we chose route and ran the tool. Then we added the copy features tool and connected it to the select data output and ran the tool. Now we have the routes from each of the mines to the nearest terminal for the state. In order to get the data into each county we need to connect the data to a counties layer. First we added a counties layer to the model and the project tool; we also added the project tool for the sand route data. We ran the project tools to project each data set into NAD 83 UTM Zone 15N. Then, we added the intersect tool to the model and connected the last two outputs and ran the tool. Now we have a dataset with all the roads used for transport within each county. By adding the summary statistics tool and connecting it to the output, selecting shape length and sum as the fields to summarize and name for what to summarize to we were able to get an output of the total length, in meters, of roads in each county that are traveled by sand trucks.
To complete the analysis we opened the table and added a field converted meters to miles using the total distance in meters, for each county, and dividing it by 1609.34 (the number of meters per mile). We then added another field and using the parameters given, each mine sends 50 trucks per year to a facility and returns, at a cost of 2.2 cents per mile of road, built a statement to finish the calculations and give us the total cost per county for roads traveled during sand transportation.  The equation used was – total miles per county * (50 * 2) * $0.022 per mile = cost ($) per county.     

Fig.3.Using modal builder to due network analysis. The layers we began
with were not all projectable, we projected our output and the counties layer
before intersecting them giving our final output and results the proper
projection and units. 


Results:

The total mileage of roads covered in the state during transportation (figure 4) is approximately 3,951 miles. If each mine is sending 50 trucks to rail facilities each year that becomes a total of 395,100 miles of travel distance on the states roads. The total costs statewide associated with this amount of travel are $8,689 (table 1).  The mining and transportation activities are highly concentrated in west-central Wisconsin, part of an area known as the sand belt. So it is no surprise that this area would have the highest amount of transportation traffic and thus the highest costs. Four counties, Chippewa, Eau Claire, Lacrosse and Trempealeau, carry $5,158, 59.4% of the total cost (table 2).
Fig.4. This map show the locations of sand mines in
Wisconsin and the routes to the nearest rail facility.
Notice the high concentration of activity in the west-
central part of the state.


County Name
Total Distance (meters)
Total Distance (miles)
Accumulated distance (miles)
Cost per year
Chippewa
1,049,247.59
652
65,200
$1,434.00
Eau Claire
928,135.41
577
57,700
$1,269.00
La Crosse
908,911.90
565
56,500
$1,243.00
Trempealeau
886,714.39
551
55,100
$1,212.00
Barron
467,491.93
290
29,000
$638.00
Dunn
389,993.73
242
24,200
$532.00
Monroe
356,913.82
222
22,200
$488.00
Wood
244,360.28
152
15,200
$334.00
Pierce
167,732.86
104
10,400
$229.00
Jackson
151,475.88
94
9,400
$207.00
St. Croix
128,717.86
80
8,000
$176.00
Winona
123,287.84
77
7,700
$169.00
Buffalo
91,918.33
57
5,700
$125.00
Clark
67,266.12
42
4,200
$92.00
Burnett
64,376.05
40
4,000
$88.00
Pepin
57,433.79
36
3,600
$79.00
Juneau
47,807.17
30
3,000
$66.00
Columbia
40,857.46
25
2,500
$55.00
Washburn
35,336.54
22
2,200
$48.00
Dodge
29,407.27
18
1,800
$40.00
Waupaca
28,487.68
18
1,800
$40.00
Green Lake
24,833.73
15
1,500
$33.00
Portage
24,603.21
15
1,500
$33.00
Houston
15,920.78
10
1,000
$22.00
Outagamie
15,084.95
9
900
$20.00
Rock
7,682.11
5
500
$11.00
Walworth
2,566.38
2
200
$4.00
Marathon
1,496.53
1
100
$2.00
Totals
6,358,061.59
3,951
395,100
$8,689.00
  Table.1. These are the results of the analysis showing the distance (roads covered)
   per county in meters. The meters have been converted to miles and then the total
   distance traveled per county and the total costs per county per year.  

County Name
Total Distance (meters)
Total Distance (miles)
Accumulated distance (miles)
Cost per year
Chippewa
1,049,247.59
652.00
65,200
$1,434.00
Eau Claire
928,135.41
577.00
57,700
$1,269.00
La Crosse
908,911.90
565.00
56,500
$1,243.00
Trempealeau
886,714.39
551.00
55,100
$1,212.00
Totals (top four)
3,773,009.29
2,345.00
234,500
$5,158.00

Percentage of total
59.36241
  Table.2. These are the top four counties by total cost per year. These four counties
   make up about 59% of the total road cost in the state.

Conclusion:

These costs are estimated costs of road maintenance that are passed on to local taxpayers. This is an important issue because many of the taxpayers are driving lightweight vehicles that do not cause much damage to the roads. However, the damage being caused by the increased amount of traffic associated with mining operations and also the extreme weight of those vehicles may be increasing the costs of maintaining the roads. The money for the repairs is not being gathered proportional to whom or what causes the damage. The results of this study could help by assessing those costs back to the mining operations and relieving some of the burden from the local taxpayers.