Find Roads Density in a Grid
This topic comes from the case files of Manifold Technical Support. A customer is using Manifold System Release 4.50. The original question, followed by our reply:
I am working on a project to look at wildlife movements from one site to another. In between the two sites is an urban area. I am trying to graphically show what habitat remains that might allow wildlife movements between these two sites. I have the Tiger/line census data, and maps of vegetation and land ownership. Manifold 4.5 (with service pack 4) so far is doing a wonderful job of displaying the basic data.
So far, I have classified the roads by surface and traffic (figuring that a 4-lane highway has much more impact on wildlife movements than a jeep trail, etc.). I am considering adding buffer zones to these roads to illustrate estimated impact. This I know Manifold can do. What others have done for these types of studies is to plot road density (using Tiger/line roads) within a fairly tight grid, say 100m by 100m (using Arcinfo or Arcview with spatial analyst). I'm sure this will be possible in release 5, but is there anyway to do something similar in 4.5? What I would really like to do is plot housing density, but with the census data, it looks like I am limited to census blocks, which don't make sense for this purpose, given the relatively small population of the area (35,000).
In Manifold 4.5, is it possible to set up a grid system that would allow me to calculate road density? (and if yes, how?)
We think all this can be done in 4.50. See, for example, the "grid analysis" screen shots in http://www.manifold.net/images/gallery/stpete.html
The problem is that TIGER/Line has linear features whereas it's easiest to use points for grid analysis. The TIGER/Line road lines must be chopped up into segments and then the lengths of all segments within each grid box is totaled up.
Doing grids is easy in Manifold. Use the tool to create grids from the Shapes toolbar. Make a 100 x 100 grid or whatever you need to cover your area. From then, the problem is figuring out how to convert the linear features into something that's countable within each grid. For example, you could create a grid of lines and then use Topology Factory to split the road lines at each intersection with the grid lines. You'd now have a bunch of road pieces. You could create a new field, Length, and then place in that field the computed length of each segment. Add of the lengths of all segments within each grid area (make the grid as areas as well) and put it in the area and you'd have a reasonably proxy for density.
If you don't have Topology Factory, there is a sophisticated way to split the lines that limits scripting to a very small script:
Example Procedure:
We illustrate the procedure using a simple map that was created "free hand" in abstract coordinates. The task has been simplified for clarity. At each step, make sure to create a new layer and after selecting the input for the next step, make it the active layer so that the results of each step are created in a new layer.
Click on the thumbnail at left to see the full screen shot.
Click here to read the Decompose Branches script.
Click here to download the Decompose Branches script as a zipfile.
Now, you can write a small script that for each original separate area in step 7 adds up the lengths of all the lines that are in that area. [This could also be done as a formula using Manifold Spread Sheet formulas within the table that use the SQL "Within" operator. Make sure you have the hot fix for 4.50 installed that repairs the "within" bug]. This total value is a reasonable proxy for the road density in that area and can be placed in some "density" field for that area.
Note that we lose the little line segments in between the boxes. This should not matter since all we need are relative densities within the boxes. Why did we have to build a checkerboard grid? We did this to avoid the need to use Topology Factory. For $45, it's worth getting!
Other tricks: see also the Polygon in Polygon topic for "polygon in polygon" methods.
Visit the Manifold.net Online Store
anytime to purchase
Manifold products. Details
regarding shipping and purchasing may be found on the Online Store's information pages as
well as on the Miscellaneous Info
page. Email sales@manifold.net at
any time, or call 800-556-5919 during business hours if you have any
questions regarding products, purchasing, or shipping information.
|
Home Page -
Products -
Search -
Support -
Shopping -
News -
Online Store Prices, terms and conditions, and product specifications subject to change without notice. Please contact Manifold Net with any special needs or requests. |