RV SuperStores
Find all Zip Codes Within 30 Miles of RV
SuperStores in California Using only Manifold CD Maps - RV
SuperStores have launched a chain of mega-centers to service the Recreational Vehicle (RV)
trade in the central valley of California, where it seems that just about everyone has a
Winnebago parked in the driveway ready to escape the summer's heat. They don't need
Zip+4 fineness, and feel that 5 digit Zip codes are accurate enough to avoid wasting
mailing dollars on people outside their trade area. They plan on opening a dozen
stores overall and need to mail frequently. This example uses the Nearest
Neighbor solver to show how to use a network concept (unattached nodes) to solve
a proximity problem.
There are two ways of approaching this case study. The obvious way is to use Buffer Zones, as in the Frank's Catering case study. We assume in this case study that you have already read the Frank's Catering case study.
There are advantages and disadvantages to using Buffer Zones. A main advantage is that the Buffer Zone approach is conceptually and visually quite simple... it requires little thought and is difficult to make an error. Another advantage is that it is possible to save each buffer zone and associated points to a separate layer and thus print out tables of Zip codes that are associated with specific stores. A key disadvantage, however, is that in the Buffer Zone approach, one must click on each buffer zone to add the points it contains to the overall selection or to otherwise deal with that specific buffer zone. If only a few buffer zones are involved, or if they blend together to form only a few "mega" areas, that's no problem, but if many buffer zones are involved, or if the scaling of the buffer zones is such that they are difficult to see in convenient overall map scales, a more automated approach might be better.
This case study lays out the use of the Nearest Neighbors solver to present a fairly sophisticated method that may be used in all sorts of abstract analysis and data mining activities. With only four locations, we would have probably used the Buffer Zone approach in real life. However, with several dozen locations, the Nearest Neighborhood "networking" approach is probably better. This example uses only a few central locations to make the resulting maps more easily legible over slow Internet connections.
1. Prepare Base Maps
- We will use the basemaps\US_main.mfd map of the United States as our
base map, overlaid with the misc\zip_centroids.mfd map of five digit Zip
codes. Both maps are found on the Manifold CD. Both maps are first
converted into Orthogonal projection using a Latitude origin of 37 and a
Longitude origin of -120. See the Reno Map case study for a step-by-step
process of converting projections. It's wise to use working copies of these maps.
The US_main map is the "lower" of the two and is formatted with a
solid area style in a light gray color. The Zip map is the "upper" of the
two maps and will be formatted so that the zip code points appear as small green circles.
2. Cut out California Zip Codes - We will use a method that involves all the zip codes in the map, so we want only the California Zip codes. Let's create a custom map called Ca_zip that includes only California Zip codes. The quickest way of doing this is to simply load the Zip map, and to then use Polygonal Select (Manifold's "lasso" function) to trace around the edges of California as it is shown on the underlying base map to select all points within California. We can then save those points to a new map. See the Reno Map case study for how this is done. Next, we reload Manifold with the US_main map on the "bottom" and Ca_zip on "top." The result is illustrated above at left. Note that we will be working only in the Ca_zip map and any layers created within that map. The US_Main map will be used only as a background and will not be touched at all.

3.
Add RV SuperStores Locations - Click on the zip codes map layer tab to make
this map the active map. From the Layers menu, insert a new blank
layer and call it Stores. RV has four locations. Insert these
as points using the Create Point tool at the right locations. For a
small number of locations this is easiest to do just by eye with the map Zoomed in.
For a large number of locations taken from a geocoded file, one would import a text or
Access file listing the names of each store using techniques (such as Import Data from
ODBC source within Table View, or the Merge Data tool) that are not covered in this case
study. Format these points so that they are visible.
We used a size of 4, a foreground
color of black (the circumference of the point circle), and a background color of bright
yellow (the fill color). We retained the default point icon, a round circle.
The map now looks like the illustration at left in a zoomed in detail.
Click on the thumbnail at right for a bigger view showing all of California. Tip:
In "real life", we'd also probably add a field to the database called Store_ID
or Name or whatever to keep track of which store is which. This is
done in Table View using the Add Field button (right).

4.
Associate Each Zip Code with the Closest Store - OK, now we "get
technical." Run the Nearest Neighbors solver to associate
every Zip code in California with the nearest RV SuperStore to that Zip code. Run
this solver with the Origin Set = Ca_zip and the Neighbor
Set = Stores. This solver creates a link
(ie, a line) between each Zip code point and the nearest RV SuperStore. The links
are in the Selection when the solver is done, so use Save Selection to a New Layer
to save them to a new layer called Radii (sort of a clumsy name, but then
again, we're technoids here, not Hemingway...). This results in the display seen at
right.

5. Select all Radii <=
Desired Radius - Using the SQL toolbar (above), we select all Radii
that are less than or equal the desired outreach radius of our mailing program. In
this example, we will use 75 kilometers as the desired radius.
We suppose in real life RV SuperStores will use miles,
but we like to use the metric system. You can use whatever units you like, even
Indian Feet, leagues, or inches. Hit Select and the SQL toolbar
instantly highlights in red all the Radii links that are less than or
equal to 75 km in length. (illustration at right) Use Save Selection to New
Layer to save these to a new layer called 75km.

6. Turn Off Unneeded Radii - Double Click on the Radii tab to turn this layer off from display. This is not strictly necessary, but it makes for a better looking display. The result is seen at left.

7. Select all Visible Objects
- This is most easily accomplished by using Mouse selection to draw a selection box around
all the objects on screen. Only the Stores, 75km,
and Ca_zip layers should be ON for display.
The result is that all the objects are selected and highlighted in
Red (left). Tip: if for some reason you still had other layers ON
for display, another way of doing this would be to right mouse click on the tab for each
layer you wished to have added to the Selection. In the pop-up menu that results
(offering a handy list of things to do with that layer) choose Add to Selection.
See the thumbnail at right.

8. Select All Unattached Zip Code Points - Finding all the Zip code points farther away than 75 km from an RV SuperStore is now the same as finding all Zip Code Points that are unattached to the "network" consisting of the Selection. Run the Manifold Unattached Nodes solver using "Selection" as the Net Source and all of the Zip code points will be highlighted in Red since they are now the new selection.

9. Organize Layers to Show Result
- Now we will do a little layer housekeeping to extract our result. Using
Save Selection as New Layer, (right) send the
selected Zip code points to a new layer, called "temp". The only points
remaining in the Ca_zip layer are now the zip code points that are
attached to the 75km links. Right mouse click on the Ca_zip
layer, choose Replace Selection and then Save Selection as New
Layer to place those "attached" zip code points into a new layer called
Result. Now, right mouse click on the temp layer,
choose Replace Selection and then use
Save
Selection to Existing Layer (right) to send all the "unattached" zip
code points from the temp layer back to Ca_zip.
Double-click on the Ca_zip layer to turn it OFF from display.
Now, all that is visible are the Stores, the 75km
lines, and the "attached" zip code points in the Result layer.

10. Turn off Unnecessary Lines and Points - We don't need the 75km lines anymore, so by double clicking on their layer tab we can turn them off. Likewise, we can turn off the Stores layer.

11. Inspect Result with Table View -
The job is now done. All we have left is reporting. We can inspect the
results by clicking on Result layer's tab to make sure the layer is
active, and then opening Table View to look at the contents of the Result
layer as a table (thumbnail at right).

10. Export the Results using ODBC - We will use a
Table View action to to export this data to a text file or database file using ODBC.
First, we need to highlight all the records since table view operators work
on highlighted records.
Click on the Table View Highlight All button
(above, left). Now, click on the Export button (below, left)
and in the resulting ODBC dialog pick the destination of your choice.
Using Buffer Zones to Accomplish the Same Task
It's also possible to use Buffer Zones as set forth
in the Frank's Catering case
study. At left is an illustration as to how this might look in the case of RV
SuperStores.
We've created Buffer Zones about each of the store points, and then using SQL Toolbar we will select all of the CA_zip points that fall inside the buffer zones. Why would we not do this in the first place?
For only four RV SuperStore locations, we would use Buffer Zones. However, as the number of store locations increases, it becomes increasingly tedious to click each buffer zone area to add the points it contains to the Selections. In contrast, the process using Nearest Neighbors and Unattached Nodes solvers works for all locations at once.
1. Create Buffer Zones - (above) Using the Stores layer as the point set, we create buffer zones with radius 75 kilometers.

2. Use SQL Toolbar to Add to Selection - Load up SQL toolbar with Ca_zip containing and the objectID of each buffer zone in sequence (click on the object selector button and then on the buffer zone to load the objectID automatically).

3. Save Selected Zip codes - Save the selected Zip code points to a results layer, and turn the Ca_zip layer off.
Like what you see? Now is the time to buy Manifold System and
get all these capabilities for yourself. It's only $145 and it
totally outperforms ancient systems from an earlier era. You get more power, better
ease of use and a spectacularly driven engineering organization working to serve you
better. While you are at it, why not order a copy of TIGER/Line 1997 as well? Visit
the Manifold.net
Online Store for a quick, easy, and secure purchase of Manifold
products, or (in the US) call 800-556-5919 to order by telephone (9-5
PST).
|
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. |