psbasemap
psbasemap - To plot PostScript basemaps
SYNOPSIS
psbasemap -Btickinfo -Jparameters
-Rwest/east/south/north[r] [ -Eazimuth/elevation ] [
-Gfill ] [ -K ] [ -L[f][x]lon0/lat0/slat/length[m|n|k] ] [
-O ] [ -P ] [ -U[/dx/dy/][label] ] [ -V ] [ -Xx-shift ] [
-Yy-shift ] [ -Xy-level ] [ -Zzlevel ] [ -ccopies ]
DESCRIPTION
psbasemap creates PostScript code that will produce a
basemap. Several map projections are available, and the
user may specify separate tickmark intervals for boundary
annotation, ticking, and [optionally] gridlines. A simple
map scale may also be plotted.
No space between the option flag and the associ
ated arguments. Use upper case for the option flags and
lower case for modifiers.
-B Sets map boundary tickmark intervals. tickinfo is a
textstring made up of one or more concatenated sub
strings of the form [which]tick[m|c]. The optional
which can be either a for annotation interval
[Default], f for frame tick interval, or g for
gridline interval. If frame interval is not set, it
is assumed to be the same as annotation interval.
tick is the desired tick interval. The optional m|c
indicates minutes (m) or seconds (c). To specify
separate x and y ticks, separate the substrings
that apply to the x and y axes with a slash [/] (If
a 3-D basemap is selected with -E, -Jz, a third
substring pertaining to the vertical axis may be
appended.) For linear/log/power projections (-Jx):
Labels for each axis can be added by surrounding
them with colons. If the first character in the
label is a period, then the label is used as plot
title; if it is a comma then the label is appended
to each anotation (start label with - to avoid
space between anotation and unit); else it is the
axis label. If the label consists of more than one
word, enclose the entire label in double quotes
(e.g., :"my label":).
By default, all 4 boundaries are plotted (referred
to as W, E, S, N). To change the default, append
the code for only those axes you want (e.g., WS for
standard lower-left x- and y-axis system). Upper
case (e.g., W) means draw axis/tickmarks AND anno
tate it, whereas lower case (e.g., w) will only
draw axis/tickmarks. (If a 3-D basemap is selected
with -E and -Jz, append Z or z to control the
appearance of the vertical axis. Append '+' to draw
the outline of the cube defined by -R. Note that
For non-geographical projections: Give negative
scale (in -Jx) or axis length (in -JX) to change
the direction of increasing coordinates (i.e., to
make the y-axis positive down). For log10 axes:
Annotations can be specified in one of three ways:
(1) tick can be 1, 2, or 3. Annotations will then
occur at 1, 1-2-5, or 1-2-3-4-...-9, respectively.
This option can also be used for the frame and grid
intervals. (2) An l is appended to the tickinfo
string. Then, log10 of the tick value is plotted
at every integer log10 value. (3) A p is appended
to the tickinfo string. Then, annotations appear as
10 raised to log10 of the tick value. For power
axes: Annotations can be specified in one of two
ways: (1) tick sets the regular annotation inter
val. (2) A p is appended to the tickinfo string.
Then, the annotation interval is expected to be in
transformed units, but the annotation value will be
plotted as untransformed units. E.g., if tick = 1
and power = 0.5 (i.e., sqrt), then equidistant
annotations labeled 1-4-9... will appear.
These GMT parameters can affect the appearance of
the map boundary: ANOT_MIN_ANGLE, ANOT_MIN_SPACING,
ANOT_FONT, ANOT_FONT_SIZE, ANOT_OFFSET,
BASEMAP_AXES, BASEMAP_FRAME_RGB, BASEMAP_TYPE,
DEGREE_FORMAT, FRAME_PEN, FRAME_WIDTH,
GRID_CROSS_SIZE, GRID_PEN, HEADER_FON,
HEADER_FONT_SIZE, LABEL_FONT, LABEL_FONT_SIZE,
LINE_STEP, OBLIQUE_ANOTATION, TICK_LENGTH,
TICK_PEN, and Y_AXIS_TYPE; see the gmtdefaults man
page for details.
-J Selects the map projection. The following character
determines the projection. If the character is
upper case then the argument(s) supplied as
scale(s) is interpreted to be the map width (or
axis lengths), else the scale argument(s) is the
map scale (see its definition for each projection).
UNIT is cm, inch, or m, depending on the MEA
SURE_UNIT setting in .gmtdefaults, but this can be
overridden on the command line by appending c, i,
or m to the scale/width values. Choose one of the
following projections (The E or C after projection
names stands for Equal-Area and Conformal, respec
tively):
CYLINDRICAL PROJECTIONS:
-Jclon0/lat0/scale or -JClon0/lat0/width (Cassini)
Give projection center and scale (1:xxxx or
UNIT/degree).
-Jjlon0/scale or -JJlon0/width (Miller Cylindrical
or UNIT/degree).
-Jmparameters (Mercator [C]). Specify one of:
-Jmscale or -JMwidth
Give scale along equator (1:xxxx or
UNIT/degree).
-Jmlon0/lat0/scale or -JMlon0/lat0/width
Give central meridian, standard
latitude and scale along parallel (1:xxxx or
UNIT/degree).
-Joparameters (Oblique Mercator [C]). Specify one
of:
-Joalon0/lat0/azimuth/scale or
-JOalon0/lat0/azimuth/width
Set projection center, azimuth of
oblique equator, and scale.
-Joblon0/lat0/lon1/lat1/scale or
-JOblon0/lat0/lon1/lat1/scale
Set projection center, another
point on the oblique equator, and scale.
-Joclon0/lat0/lonp/latp/scale or
-JOclon0/lat0/lonp/latp/scale
Set projection center, pole of
oblique projection, and scale.
Give scale along oblique equator (1:xxxx or
UNIT/degree).
-Jqlon0/scale or -JQlon0/width (Equidistant Cylin
drical Projection (Plate Carree))
Give the central meridian and scale (1:xxxx
or UNIT/degree).
-Jtparameters (Transverse Mercator [C]). Specify
one of:
-Jtlon0/scale or -JTlon0/width
Give the central meridian and scale
(1:xxxx or UNIT/degree).
-Jtlon0/lat0/scale or -JTlon0/lat0/width
Give projection center and scale
(1:xxxx or UNIT/degree).
-Juzone/scale or -JUzone/width (UTM - Universal
Transverse Mercator [C])
Give the zone number (1-60) and scale
(1:xxxx or UNIT/degree).
zones: prepend - or + to enforce southern
or northern hemisphere conventions [northern if
south > 0].
-Jylon0/lats/scale or -JYlon0/lats/width (Basic
Cylindrical Projections [E])
Give the central meridian, standard paral
lel, and scale (1:xxxx or UNIT/degree).
The standard parallel is typically one of
these (but can be any value):
45 - The Peters projection
37.4 - The Trystan Edwards projection
AZIMUTHAL PROJECTIONS:
-Jalon0/lat0/scale or -JAlon0/lat0/width (Lambert
[E]).
lon0/lat0 specifies the projection center.
Give scale as 1:xxxx or radius/lat, where
radius is distance
in UNIT from origin to the oblique latitude
lat.
-Jelon0/lat0/scale or -JElon0/lat0/width (Equidis
tant).
lon0/lat0 specifies the projection center.
Give scale as 1:xxxx or radius/lat, where
radius is distance
in UNIT from origin to the oblique latitude
lat.
-Jflon0/lat0/horizon/scale or -JFlon0/lat0/hori
zon/width (Gnomonic).
lon0/lat0 specifies the projection center.
horizon specifies the max distance from
projection center (in degrees, < 90).
Give scale as 1:xxxx or radius/lat, where
radius is distance
in UNIT from origin to the oblique latitude
lat.
-Jglon0/lat0/scale or -JGlon0/lat0/width (Ortho
graphic).
lon0/lat0 specifies the projection center.
Give scale as 1:xxxx or radius/lat, where
radius is distance
in UNIT from origin to the oblique latitude
lat.
-Jslon0/lat0/scale or -JSlon0/lat0/width (General
Stereographic [C])
lon0/lat0 specifies the projection center.
Give scale as 1:xxxx (true at pole) or
slat/1:xxxx (true at standard parallel slat)
or radius/lat (radius in UNIT from origin
to the oblique latitude lat).
CONIC PROJECTIONS:
-Jblon0/lat0/lat1/lat2/scale or
-JBlon0/lat0/lat1/lat2/width (Albers [E])
Give projection center, two standard paral
lels, and scale (1:xxxx or UNIT/degree).
-Jdlon0/lat0/lat1/lat2/scale or
-JDlon0/lat0/lat1/lat2/width (Equidistant)
Give projection center, two standard paral
lels, and scale (1:xxxx or UNIT/degree).
-Jllon0/lat0/lat1/lat2/scale or
scale along these (1:xxxx or UNIT/degree).
MISCELLANEOUS PROJECTIONS:
-Jhlon0/scale or -JHlon0/width (Hammer [E])
Give the central meridian and scale along
equator (1:xxxx or UNIT/degree).
-Jilon0/scale or -JIlon0/width (Sinusoidal [E])
Give the central meridian and scale along
equator (1:xxxx or UNIT/degree).
-Jk[f|s]lon0/scale or -JK[f|s]lon0/width (Eckert IV
(f) and VI (s) [E])
Give the central meridian and scale along
equator (1:xxxx or UNIT/degree).
-Jnlon0/scale or -JNlon0/width (Robinson)
Give the central meridian and scale along
equator (1:xxxx or UNIT/degree).
-Jrlon0/scale -JRlon0/width (Winkel Tripel)
Give the central meridian and scale along
equator (1:xxxx or UNIT/degree).
-Jvlon0/scale or -JVlon0/width (Van der Grinten)
Give the central meridian and scale along
equator (1:xxxx or UNIT/degree).
-Jwlon0/scale or -JWlon0/width (Mollweide [E])
Give the central meridian and scale along
equator (1:xxxx or UNIT/degree).
NON-GEOGRAPHICAL PROJECTIONS:
-Jp[a]scale[/origin] or -JP[a]width[/origin] (Lin
ear projection for polar (theta,r) coordinates,
optionally insert a after -Jp [ or -JP] for
azimuths CW from North instead of directions CCW
from East [default], optionally append /origin in
degrees to indicate an angular offset [0]).
Give scale in UNIT/r-unit.
-Jxx-scale[/y-scale] or -JXwidth[/height]
scale [or width] can be any of the following 3
types:
-Jxscale - Regular linear scaling.
-Jxscalel - Take log10 of values before
scaling.
-Jxscaleppower - Raise values to power
before scaling.
Give x-scale in UNIT/x-unit and y-scale in UNIT/y-
unit. (y-scale = x-scale if not specified sepa
rately). Use negative scale(s) to reverse the
direction of an axis (e.g., to have y be positive
down).
Append a single d if data are geographical coordi
nates in degrees. Default axes lengths (see gmtde
lengths. The GMT default unit for this installa
tion is UNIT. However, you may change this by edit
ing your .gmtdefaults file(s) (run gmtdefaults to
create one if you don't have it).'
The ellipsoid used in the map projections
is user-definable by editing the .gmtdefaults file
in your home directory. 13 commonly used ellipsoids
and a spheroid are currently supported, and users
may also specify their own ellipsoid parameters
(see man gmtdefaults for more details). GMT
default is WGS-84. Several GMT parameters can
affect the projection: ELLIPSOID, INTERPOLANT,
MAP_SCALE_FACTOR, and MEASURE_UNIT; see the gmtde
faults man page for details.
-R west, east, south, and north specify the Region of
interest. To specify boundaries in degrees and min
utes [and seconds], use the dd:mm[:ss] format.
Append r if lower left and upper right map coordi
nates are given instead of wesn.
OPTIONS
-E Sets the viewpoint's azimuth and elevation (for
perspective view) [180/90]'
-G Paint inside of basemap. [Default is no fill].
Specify the shade (0-255) or color (r/g/b, each in
0-255).
-Jz Sets the vertical scaling (for 3-D maps). Same syn
tax as -Jx.
-K More PostScript code will be appended later
[Default terminates the plot system].
-L Draws a simple map scale centered on lon0/lat0. Use
-Lx to specify x/y position iinstead. Scale is
calculated at latitude slat, length is in km [miles
if m is appended; nautical miles if n is appended].
Use -Lf to get a "fancy" scale [Default is plain].
-O Selects Overlay plot mode [Default initializes a
new plot system].
-P Selects Portrait plotting mode [GMT Default is
Landscape, see gmtdefaults to change this].
-U Draw Unix System time stamp on plot. User may spec
ify where the lower left corner of the stamp should
fall on the page relative to lower left corner of
plot. Optionally, append a label, or c (which will
plot the command string.). The GMT parameters
details.
-V Selects verbose mode, which will send progress
reports to stderr [Default runs "silently"].
-X -Y Shift origin of plot by (x-shift,y-shift). Prepend
a for absolute coordinates; the default (r) will
reset plot origin.
-Z For 3-D projections: Sets the z-level of the
basemap [0].
-c Specifies the number of plot copies. [Default is 1]
EXAMPLES
The following section illustrates the use of the options
by giving some examples for the available map projections.
Note how scales may be given in several different ways
depending on the projection. Also note the use of upper
case letters to specify map width instead of map scale.
NON-GEOGRAPHICAL PROJECTIONS
Linear x-y plot
To make a linear x/y frame with all axes, but with only
left and bottom axes annotated, using xscale = yscale =
1.0, ticking every 1 unit and annotating every 2, and
using xlabel = "Distance" and ylabel = "No of samples",
try
psbasemap -R0/9/0/5 -Jx1 -Bf1a2:Distance:/:"No of sam
ples":WeSn > linear.ps
log-log plot
To make a log-log frame with only the left and bottom
axes, where the x-axis is 25 cm and annotated every 1-2-5
and the y-axis is 15 cm and anotated every power of 10 but
has tickmarks every 0.1, try
psbasemap -R1/10000/1e20/1e25 -JX25cl/15cl -B2:Wave
length:/a1pf3:Power:WS > loglog.ps
power axes
To design an axis system to be used for a depth-sqrt(age)
plot with depth positive down, ticked and annotated every
500m, and ages annotated at 1 my, 4 my, 9 my etc, try
psbasemap -R0/100/0/5000 -Jx1p0.5/-0.001 -B1p:"Crustal
age":/500:Depth: > power.ps
Polar (theta,r) plot
For a base map for use with polar coordinates, where the
psbasemap -R0/360/0/1000 -JP6i -B30p/100 > polar.ps
CYLINDRICAL MAP PROJECTIONS
Cassini
A 10-cm-wide basemap using the Cassini projection may be
obtained by
psbasemap -R20/50/20/35 -JC35/28/10c -P -B5g5:.Cassini: >
cassini.ps
Mercator [conformal]
A Mercator map with scale 0.025 inch/degree along equator,
and showing the length of 5000 km along the equator (cen
tered on 1/1 inch), may be plotted as
psbasemap -R90/180/-50/50 -Jm0.025i -B30g30:.Mercator:
-Lx1i/1i/0/5000 > mercator.ps
Miller
A global Miller cylindrical map with scale 1:200,000,000,
may be plotted as
psbasemap -R0/360/-90/90 -Jj1:200000000 -B30g30:.Miller: >
miller.ps
Oblique Mercator [conformal]
To create a page-size global oblique Mercator basemap for
a pole at (90,30) with gridlines every 30 degrees, try
psbasemap -R0/360/-70/70 -Joc0/0/90/30/0.064cd
-B30g30:."Oblique Mercator": > oblmerc.ps
Transverse Mercator [conformal]
A regular Transverse Mercator basemap for some region may
look like
psbasemap -R69:30/71:45/-17/-15:15 -Jt70/1:1000000
-B15m:."Survey area": -P > transmerc.ps
Equidistant Cylindrical Projection
This projection only needs the central meridian and scale.
A 25 cm wide global basemap centered on the 130E meridian
is made by
psbasemap -R-50/310/-90/90 -JQ130/25c -B30g30:."Equidis
tant Cylindrical": > cyl_eqdist.ps
Universal Transverse Mercator [conformal]
To use this projection you must know the UTM zone number,
psbasemap -R95/5/108/20r -Ju46/1:10000000 -B3g3:.UTM: >
utm.ps
Basic Cylindrical [equal-area]
First select which of the cylindrical equal-area projec
tions you want by deciding on the standard parallel. Here
we will use 45 degrees which gives the Peters projection.
A 9 inch wide global basemap centered on the Pacific is
made by
psbasemap -R0/360/-90/90 -JY180/45/9i -B30g30:.Peters: >
peters.ps
CONIC MAP PROJECTIONS
Albers [equal-area]
A basemap for middle Europe may be created by
psbasemap -R0/90/25/55 -Jb45/20/32/45/0.25c
-B10g10:."Albers Equal-area": > albers.ps
Lambert [conformal]
Another basemap for middle Europe may be created by
psbasemap -R0/90/25/55 -Jl45/20/32/45/0.1i -B10g10:."Lam
bert Conformal Conic": > lambertc.ps
Equidistant
Yet another basemap of width 6 inch for middle Europe may
be created by
psbasemap -R0/90/25/55 -JD45/20/32/45/6i
-B10g10:."Equidistant conic": > econic.ps
AZIMUTHAL MAP PROJECTIONS
Lambert [equal-area]
A 15-cm-wide global view of the world from the vantage
point -80/-30 will give the following basemap:
psbasemap -R0/360-/-90/90 -JA-80/-30/15c
-B30g30/15g15:."Lambert Azimuthal": > lamberta.ps
Follow the instructions for stereographic projection if
you want to impose rectangular boundaries on the azimuthal
equal-area map but substitute -Ja for -Js.
Equidistant
A 15-cm-wide global map in which distances from the center
(here 125/10) to any point is true can be obtained by:
Gnomonic
A view of the world from the vantage point -100/40 out to
a horizon of 60 degrees from the center can be made using
the Gnomonic projection:
psbasemap -R0/360-/-90/90 -JF-100/40/60/6i
-B30g30/15g15:."Gnomonic": > gnomonic.ps
Orthographic
A global perspective (from infinite distance) view of the
world from the vantage point 125/10 will give the follow
ing 6-inch-wide basemap:
psbasemap -R0/360-/-90/90 -JG125/10/6i
-B30g30/15g15:."Orthographic": > ortho.ps
Stereographic [conformal]
To make a Polar stereographic projection basemap with
radius = 12 cm to -60 degree latitude, with plot title
"Salinity measurements", using 5 degrees annotation/tick
interval and 1 degree gridlines, try
psbasemap -R-45/45/-90/-60 -Js0/-90/12c/-60 -B5g1:."Salin
ity measurements": > stereo1.ps
To make a 12-cm-wide stereographic basemap for Australia
from an arbitrary view point (not the poles), and use a
rectangular boundary, we must give the pole for the new
projection and use the -R option to indicate the lower
left and upper right corners (in lon/lat) that will define
our rectangle. We choose a pole at 130/-30 and use 100/-45
and 160/-5 as our corners. The command becomes
psbasemap -R100/-45/160/-5r -JS130/-30/12c
-B30g30/15g15:."General Stereographic View": > stereo2.ps
MISCELLANEOUS MAP PROJECTIONS
Hammer [equal-aera]
The Hammer projection is mostly used for global maps and
thus the spherical form is used. To get a world map cen
tered on Greenwich at a scale of 1:200000000, try
psbasemap -R0/360/-90/90 -Jh180/1:200000000
-B30g30/15g15:.Hammer: > hammer.ps
Sinusoidal [equal-aera]
To make a sinusiodal world map centered on Greenwich, with
a scale along the equator of 0.02 inch/degree, try
psbasemap -R0/360/-90/90 -Ji0/0.02i -B30g30/15g15:."Sinu
160W, 20W, and 60E, with a scale along the equator of 0.02
inch/degree, try the following sequence of commands:
psbasemap -R-160/-20/-90/90 -Ji-90/0.02i -B30g30/15g15Wesn
-K > sinus_i.ps
psbasemap -R-20/60/-90/90 -Ji20/0.02i -B30g30/15g15wesn -O
-K -X2.8i >> sinus_i.ps
psbasemap -R60/200/-90/90 -Ji130/0.02i -B30g30/15g15wEsn
-O -X1.6i >> sinus_i.ps
Eckert IVI [equal-aera]
Pseudo-cylindrical projection typically used for global
maps only. Set the central longitude and scale, e.g.,
psbasemap -R0/360/-90/90 -Jkf180/0.064c
-B30g30/15g15:."Eckert IV": > eckert4.ps
Eckert VI [equal-aera]
Another pseudo-cylindrical projection typically used for
global maps only. Set the central longitude and scale,
e.g.,
psbasemap -R0/360/-90/90 -Jks180/0.064c
-B30g30/15g15:."Eckert VI": > eckert6.ps
Robinson
Projection designed to make global maps "look right". Set
the central longitude and width, e.g.,
psbasemap -R-180/180/-90/90 -JN0/8i -B30g30/15g15:."Robin
son": > robinson.ps
Winkel Tripel
Yet another projection typically used for global maps
only. You can set the central longitude, e.g.,
psbasemap -R90/450/-90/90 -JR270/25c
-B30g30/15g15:."Winkel Tripel": > winkel.ps
Mollweide [equal-aera]
The Mollweide projection is also mostly used for global
maps and thus the spherical form is used. To get a 25-cm-
wide world map centered on the Dateline, try
psbasemap -R0/360/-90/90 -JW180/25c -B30g30/15g15:.Moll
weide: > mollweide.ps
Van der Grinten
The Van der Grinten projection is also mostly used for
global maps and thus the spherical form is used. To get a
10-inch-wide world map centered on the Dateline, try
RESTRICTIONS
For some projections, a spherical earth is implicitly
assumed. A warning will notify the user if -V is set.
BUGS
The -B option is somewhat complicated to explain and com
prehend. However, it is fairly simple for most applica
tions (see examples).
SEE ALSO
gmtdefaults(l), gmt(l)
Man(1) output converted with
man2html