NAME
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 associated
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 those you want (e.g., WS for standard lower-left x-
and y-axis system). Upper case (e.g., W) means draw
axis/tickmarks AND annotate 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)
For non-geographical projections: Give negative scale
(in -Jx) or axis length (in -JX) to change the direc-
tion 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
interval. (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.
-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 defini-
tion for each projection). UNIT is cm, inch, or m,
depending on the MEASURE_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 pro-
jection names stands for Equal-Area and Conformal,
respectively):
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 Pro-
jection)
Give the central meridian and scale (1:xxxx 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 pro-
jection, and scale.
Give scale along oblique equator (1:xxxx or
UNIT/degree).
-Jqlon0/scale or -JQlon0/width (Equidistant Cylindrical
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 and scale (1:xxxx or
UNIT/degree).
Use negative zone numbers for the southern hemi-
sphere.
-Jylon0/lats/scale or -JYlon0/lats/width (Basic
Cylindrical Projections [E])
Give the central meridian, standard parallel, 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
30 - The Behrman projection
0 - The Lambert 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 (Equidistant).
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/horizon/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 or radius/lat, where radius
is distance
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 parallels,
and scale (1:xxxx or UNIT/degree).
-Jdlon0/lat0/lat1/lat2/scale or
-JDlon0/lat0/lat1/lat2/width (Equidistant)
Give projection center, two standard parallels,
and scale (1:xxxx or UNIT/degree).
-Jllon0/lat0/lat1/lat2/scale or
-JLlon0/lat0/lat1/lat2/width (Lambert [C])
Give origin, 2 standard parallels, and 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:
-Jpscale[/origin] or -JPwidth[/origin] (Linear projec-
tion for polar (theta,r) coordinates, 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 separately). Use
negative scale(s) to reverse the direction of an axis
(e.g., to have y be positive down).
Append d if x and y are geographical coordinates in
degrees. Default axes lengths (see gmtdefaults) can be
invoked using -JXh (for landscape); -JXv (for portrait)
will swap the x- and y-axes lengths. The GMT default
unit for this installation is UNIT. However, you may
change this by editing 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 gmtde-
faults for more details). GMT default is WGS-84.
-R west, east, south, and north specify the Region of
interest. To specify boundaries in degrees and minutes
[and seconds], use the dd:mm[:ss] format. Append r if
lower left and upper right map coordinates are given
instead of wesn.
OPTIONS
-E Sets the viewpoint's azimuth and elevation (for per-
spective 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 syntax
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 calcu-
lated 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 specify
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.)
-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
samples":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 tick-
marks every 0.1, try
psbasemap -R1/10000/1e20/1e25 -JX25cl/15cl
-B2:Wavelength:/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
radius from 0 to 1000 should correspond to 3 inch and with
gridlines and ticks every 30 degrees and 100 units, try
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:."Equidistant
Cylindrical": > cyl_eqdist.ps
Universal Transverse Mercator [conformal]
To use this projection you must know the UTM zone number,
which defines the central meridian. A UTM basemap for
Indo-China can be plotted as
psbasemap -R95/5/108/20r -Ju46/1:10000000 -B3g3:.UTM: >
utm.ps
Basic Cylindrical [equal-area]
First select which of the cylindrical equal-area projections
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:."Lambert
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:
psbasemap -R0/360-/-90/90 -JE125/10/15c
-B30g30/15g15:."Equidistant": > equi.ps
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 following
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:."Salinity
measurements": > stereo1.ps
To make a 12-cm-wide stereographic basemap for Australia
from an arbitrary view point (not the poles), and use a rec-
tangular boundary, we must give the pole for the new projec-
tion and use the -R option to indicate the lower left and
upper right corners (in lon/lat) that will define our rec-
tangle. 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:."Sinusoidal": > sinus1.ps
To make an interrupted sinusiodal world map with breaks at
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:."Robinson": > 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:.Mollweide: > mollweide.ps
Van der Grinten
The Van der Grinten projection is also mostly used for glo-
bal maps and thus the spherical form is used. To get a 10-
inch-wide world map centered on the Dateline, try
psbasemap -R0/360/-90/90 -JV180/10i -B30g30/15g15:."Van der
Grinten": > grinten.ps
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
comprehend. However, it is fairly simple for most applica-
tions (see examples).
SEE ALSO
gmtdefaults(l), gmt(l)