Cookbook
10 -- Plotting points on USGS maps in MapInfo GIS
Background
The basic assumption here is that you have a bunch (more than you want
to do by hand) of points that you want to plot on a USGS topographic sheet
(1:250,000, 1:63,360, or 1:25,000). Of course, if your points cover
a very small (say, less than ~200 m) or very large (greater than ~200km)
scale area, then it doesn’t really make sense to plot on a USGS topo sheet.
You must also have the locations of the points specified by Lat/Lon
or UTM coordinates to a level of accuracy suitable to the map scale you
are plotting. No need to be more accurate than 2 meters, but you
should be at least as accurate as +/- 100 meters. Here we assume
you have this data as an MS Excel file with location info as two separate
columns
Here we assume we will plot everything on one USGS sheet, stitching
topo sheets together is possible but not covered here.
Download Map
The USGS makes data for Alaska available at several websites.
The exact content and location of these sites is continually changing.
In January 2001, the site at
http://agdc.usgs.gov/data/usgs/geodata/
was quite good. These are bitmaps (as .tif files) of the printed
USGS sheets. Even though they do not (generally) download with a
.zip extension, they ARE compressed and have to be uncompressed (use the
winzip utility).
When you download the maps, make sure you download the associated .tfw
file (an Arcview world file). These two files (as an example, the
Circle Quad would be c65144a1.tif and c65144a1.tfw) together register
the pixels of the bitmap into UTM coordinates. That’s right – the
Northing and Easting (in meters) of each pixel is specified – how cool
is that!? When you download the .tfw file your browser will probably
just open the text file and display it. No problem, just copy the
text and paste into a text file (use the notepad accessory, check in NT
explorer to make sure the extension is .tfw). Your .tif and .tfw
files should have the same names but different extensions (eg., c65144a1.tif
and
c65144a1.tfw).
Groom Data
If you have Lat/Lon in degrees, minutes, seconds (or degrees and decimal
minutes), or Lat/Lon in the same column, you should convert them to decimal
degrees Latitude and Longitude (west as negative values of longitude) in
Excel. You can include other data in this spreadsheet – it will be
imported into the MapInfo table along with the location info and be available
for other analysis (contouring, labels, etc.). At the minimum you’ll
probably want a Station ID, Lat. And Lon.
Bring A Registered USGS
Map into MapInfo
Launch the MapInfo application. From the menubar select WorldReg
… World Registration. This is a third party add-in to MapInfo which
has to be downloaded and added to the application, at UAF Geology &
Geophysics this software is already added in – at other installations you
will have to download and add install it. A dialog box will ask you
to specify the bitmap (raster) file type – for USGS maps this type is .tif,
but if you have other data types (satellite images, airphotos, etc. you
will have to specify the type).
At this point a standard open file dialog will appear, browse to your
.tif file and select it – if you haven’t messed up the file names, the
application will automatically find the .tfw file. If you haven’t
decompressed the bitmap you will get an error here. Check that the
World File Details are correct – the pixels sizes, corner of the map, scale,
datum, and UTM zone should make sense.
MapInfo will ask for a Table Name. The fundamental container
for data in MapInfo is a Table – anything you import will have a table
name – when you import a map, go with the default (c65144.tab for the circle
quad).
At this time, MapInfo will open a Map window for the c65144.tab table
and you can use the tools in the Main toolbar to zoom in/out and scroll
through the map.
Bring Data Into MapInfo
A cool feature of MapInfo is that one can parse MS Excel files directly
into MapInfo. That might seem like a mindless feature, but remember
than MapInfo works on DATABASE tables and MS Excel data is a SPREADSHEET.
In Arcview (for example) you must first convert your MS Excel sheet to
a database and then import it (either way you are doing the SAME thing).
In MapInfo, select File … Open Table. MapInfo originally looks
to open MapInfo tables (*.tab). Change the file type selection in
the dialog box, under “Files of Type:” to Microsoft Excel. Browse
to the locaition of your Excel file and click open.
At this point you can save yourself a LOT of work by looking at your
Excel spreadsheet and locating where the data begins. For example,
if you have column labels in Row 1, start the import in Row 2 and specify
that the line above the data is column titles. For the Steese data,
the Named Range will be: Steese99!A2:AJ1558 (Note that MapInfo uses
the MS Excel protocols to separate the sheetname from the cell range with
a ! character and the : character to separate the upper left cell from
the lower right).
This will open up a browser window, in which you should find the MS
Excel data. Because the data came from a spreadsheet we have to specify
data types for the columns (the table structure) in order to complete the
conversion to a database.
MapInfo opens tables as read-only so we cannot
change the table structure immediately. First save a copy of the
imported table with a new name (eg., Steese2), close the original table,
and open the new table.
Use the command: File … Save copy as:, then select
the name of the table (you should only have two open tables – the map[c65144,
in the steese example] and the imported table[steese, in the steese example]),
select the imported table [steese, in the steese example], and pick a NEW
name [steese2, in the steese example]. Steese2 will not be read-only
and we can modify the table structure as we wish.
Close the read-only version. Select File
… Close table, and pick the current table to close. Now select File
… Open table, and select the table to open [Steese2 in the Steese example].
With the new table browser open, select Table
… Maintenance … Table Structure. This will open a dialog box in which
you can modify the structure of the table. You can do a LOT here,
this is where you modify the database structures to fit the data and the
problem you are solving. In this cookbook, we will only check/change
two important things.
First, make sure the latitude and longitude columns
are of the type “float” (floating point data are numbers where the decimal
point is not locked into – they float -- a given position). You should
not have to change this for the Steese data set.
Second, you must associate the table with a map
projection and datum. To do this click the check box “Table is mappable”,
and the click the projection button which appears. At this point
we are assuming that the Lon/Lat data in the MS Excel table is in the same
datum as the USGS maps (NAD 27). At some scales, this might not be
an issue (we’re talking about horizontal errors of +/- 500 meters), but
it is important to know what datum your locations was collected in.
If you collected the locations in NAD 83 and want to convert, we have programs
in the lab that do that.
Assuming the data is NAD27, under categories: select
Longitude/Latitude, and under category members: select Longitude and Latitude
(NAD 27 for Alaska).
After you have select a projection, click OK on
the Modify Table Structure dialog box.
Although the table has Longitudes and latitudes
in it we have to identify those columns, select a symbol before we can
plot the points. Select Table … Create Points, and identify the X
coordinate as Longitude, and the Y coordinate as Latitude. There
is no need to modify the projection in this dialog box.
Although the table now includes the definition of
the points we need to bring that table into the USGS map window.
Select the c65144a map window, select Map … Layer
Control and click the Add button. This layer control dialog is very
similar to the layer control in Corel Draw or Adobe Illustrator.
If the table you added is above the map it will plot on top of the base
map. Make sure the table is visible and appears above the base map
and click OK.
You should see a swarm of points on the Circle Quad
with the example data.
Using Geologic
Symbols in Your Maps
The same symbol set (GeoSymbol from Pangaea Scientific)
which is available in CorelDraw is also available in MapInfo. To
select the GeoSymbol font:
-
With MapInfo running
-
Select Options ... Symbol Style
-
In the Symbol Style dialog box select the Geology font
-
Pick the symbol you wish from the pull down menu.
-
The previews are fairly ugly, you can use the GeoSymbol card in the lab
to find your favorite symbol.
-
The rotation convention is counterclockwise, but is useful for placing
s/d symbols.
Compose a Layout
to Print on Large Format Printer
Here we assume you have already added the DesignJet Printer and we
are printing the Steese data set. The specifics here depend, of course,
on your data.
Whatever appears in you map window will print on
the page. A good way to fit the data to the window is to right click
on the map window and select “View Entire Layer” and select Steese2.
The definition of which map windows print
where on the
page in MapInfo is controlled in Layout windows. To create a layout
select Window … New Layout Window. Select the top option “one layout
for the current Map window”, click OK.
Now specify the printer and papersize. Select File … Page Setup.
Click the Printer button, select the DesignJet 750C printer. Click
the Properties button and select landscape button. Click the More
Sizes button and select a paper size 36” wide by 20” high.
The Layout window should show a blank piece of paper
36” wide by 20” high. If it appears some of the paper is missing,
then right click on the layout and select View Entire Layout.
In a Layout Window, Map Windows
are displayed in Frames. So now specify a frame in the layout.
Use the Frame tool from the Drawing Toolbar. (If you’ve lost the
Drawing Toolbar, you can bring them back by right clicking up among the
toolbars to get the Toolbar Options dialog.)
With the Frame Tool, click-drag an insertion box
onto the printable (white) portion of the layout. When you release
the mouse a Frame Object dialog appears and allows you to confirm the scale
– if you don’t mind an odd scale (1” = 1.330 miles, for example), click
OK – otherwise you can select an even scale (1” = 1.5 miles).
IF you want an exact scale on your paper, the way to go is to:
-
Determine the Frame width in the layout in cms.
-
Determine the appropriate final (on paper) scale.
-
Use the following formulae:
-
((Frame Width in Inches * Scale) /12) /5280 = Map Zoom (miles), or
-
((Frame Width in cms. * Scale) /100,000 = Map Zoom (kms).
-
Then, in the Map Browser set the Map Zoom (Map ... Change View).
Embellishments
This cookbook will get you going, but look into the MapInfo’s help
screens for adding scale bars and north arrows (see the cosmetic layer),
adding contoured overlays (see Vertical Mapper), or generating graphics
and perspective views.
revised November 2001