psxyz
psxyz - Plot lines, polygons, and symbols in 3-D
SYNOPSIS
psxyz files -Jparameters
-Rwest/east/south/north/zmin/zmax[r] [ -Btickinfo ] [
-Ccptfile ] [ -Eazimuth/elevation ] [ -Gfill ] [ -H[nrec]
] [ -K ] [ -L ] [ -M[flag] ] [ -N ] [ -O ] [ -P ] [
-S[symbol][size] ] [ -U[/dx/dy/][label] ] [ -V ] [ -W[pen]
] [ -Xx-shift ] [ -Yy-shift ] [ -Zzlevel ] [ -: ] [
-ccopies ] [ -bi[s][n] ]
DESCRIPTION
psxyz reads (x,y,z) triplets from files [or standard
input] and generates PostScript code that will plot lines,
polygons, or symbols at those locations in 3-D. If a sym
bol is selected and no symbol size given, then psxyz will
interpret the fourth column of the input data as symbol
size. Symbols whose size is <= 0 are skipped. If no sym
bols are specified then the symbol code (see -S below)
must be present as last column in the input. Multiple seg
ment files may be plotted using the -M option. If no sym
bols are selected, a line will be drawn. To explicitly
close polygons, use -L. Select a shade with -G. If -G is
set, -W will control whether the polygon outline is drawn
or not. If a symbol is selected, -G and -W determines the
fill color and outline/no outline, respectively. The
PostScript code is written to standard output.
files List one or more file-names. If no files are given,
psxyz will read standard input.
-J Selects the map projection. Scale is UNIT/degree,
1:xxxxx, or width in UNIT (upper case modifier).
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 the c,
i, or m to the scale/width value.
CYLINDRICAL PROJECTIONS:
-Jclon0/lat0/scale (Cassini)
-Jjlon0/scale (Miller)
-Jmscale (Mercator - Greenwich and Equator as ori
gin)
-Jmlon0/lat0/scale (Mercator - Give meridian and
standard parallel)
-Joalon0/lat0/azimuth/scale (Oblique Mercator -
point and azimuth)
-Joblon0/lat0/lon1/lat1/scale (Oblique Mercator -
two points)
-Joclon0/lat0/lonp/latp/scale (Oblique Mercator -
point and pole)
-Jtlon0/scale (TM - Transverse Mercator, with Equa
tor as y = 0)
-Jtlon0/lat0/scale (TM - Transverse Mercator, set
origin)
-Juzone/scale (UTM - Universal Transverse Mercator)
-Jylon0/lats/scale (Basic Cylindrical Projection)
AZIMUTHAL PROJECTIONS:
-Jalon0/lat0/scale (Lambert).
-Jelon0/lat0/scale (Equidistant).
-Jflon0/lat0/horizon/scale (Gnomonic).
-Jglon0/lat0/scale (Orthographic).
-Jslon0/lat0/[slat/]scale (General Stereographic)
CONIC PROJECTIONS:
-Jblon0/lat0/lat1/lat2/scale (Albers)
-Jdlon0/lat0/lat1/lat2/scale (Equidistant)
-Jllon0/lat0/lat1/lat2/scale (Lambert)
MISCELLANEOUS PROJECTIONS:
-Jhlon0/scale (Hammer)
-Jilon0/scale (Sinusoidal)
-Jk[f|s]lon0/scale (Eckert IV (f) and VI (s))
-Jnlon0/scale (Robinson)
-Jrlon0/scale (Winkel Tripel)
-Jvlon0/scale (Van der Grinten)
-Jwlon0/scale (Mollweide)
NON-GEOGRAPHICAL PROJECTIONS:
-Jp[a]scale[/origin] (polar (theta,r) coordinates,
optional a for azimuths and offset theta [0])
-Jxx-scale[l|ppow][/y-scale[l|ppow]] (Linear, log,
and power scaling)
More details can be found in the psbasemap man
pages.
-Jz Sets the vertical scaling (for 3-D maps). Same syn
tax as -Jx.
-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
No space between the option flag and the associated argu
ments.
for details.
-C Give a color palette file. If -S is set, let symbol
color be determined by the t-value in the fourth
column. Additional fields are shifted over by one
column (optional size would be in 5th rather than
4th field, etc.). If -S is not set, then psxyz
expects a multisegment polygon file (requires -M)
where each segment header contains a -Zval string.
The val controls the polygon color via the cpt
file.
-E Sets the viewpoint's azimuth and elevation
[180/90].'
-G Select filling of polygons and symbols. Append the
shade (0-255), color (r/g/b), or P|pdpi/pattern
(polygons only) [Default is no fill]. Note when -M
is chosen, psxyz will search for -G and -W strings
in all the subheaders and let any found values
over-ride the command line settings.
-H Input file(s) has Header record(s). Number of
header records can be changed by editing your .gmt
defaults file. If used, GMT default is 1 header
record.
-K More PostScript code will be appended later
[Default terminates the plot system].
-L Force closed polygons: will connect the endpoints
of the line-sement(s) and draw polygons.
-M Multiple segment file. Segments are separated by a
record whose first character is flag. [Default is
'>'].
-N Do NOT skip symbols that fall outside map border
[Default plots points inside border only].
-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].
-S Plot symbols. size is symbol size in the unit set
in .gmtdefaults (unless c, i, m, or p is appended).
The uppercase symbols A, C, D, H, I, S, T are nor
malized to have the same area as a circle of given
size, while the corresponding lowercase symbols are
circumscribed by the circle. Choose between:
the input data. Cannot be used in conjunction with
-b. Optionally, append c, i, m, p to indicate that
the size information in the input data is in units
of cm, inch, meter, or point, respectively.
[Default is MEASURE_UNIT].
-Sa star. size is diameter of circumscribing circle.
-Sb (b)ar extending from base to y. size is bar width.
Append u if size is in x-units [Default is plot-
distance units]. By default, base = 0. Append bbase
to change this value.
-Sc (c)ircle. size is diameter of circle.
-Sd (d)iamond. size is diameter of circumscribing cir
cle.
-Se ellipse. Direction (in degrees counterclockwise
from horizontal), major_axis, and minor_axis must
be found in columns 4, 5, and 6.
-SE Same as -Se, except azimuth (in degrees east of
north) should be given instead of direction. The
azimuth will be mapped into an angle based on the
chosen map projection (-Se leaves the directions
unchanged.) Furthermore, the axes lengths must be
given in km instead of plot-distance units.
-Sf front. -Sfgap/size[dir][type][:offset]. Supply dis
tance gap between symbols and symbol size. If gap
is negative, it is interpreted to mean the number
of symbols along the front instead. Append dir to
plot symbols on the left or right side of the front
[Default is centered]. Append type to specify which
symbol to plot: box, circle, fault, slip, or trian
gle. [Default is fault]. Slip means left-lateral
or right-lateral strike-slip arrows (centered is
not an option). Append :offset to offset the first
symbol from the beginning of the front by that
amount [0].
-Sh hexagon. size is diameter of circumscribing circle.
-Si inverted triangle. size is diameter of circumscrib
ing circle.
-Sl letter or text string (less than 64 characters).
Give size, and append /string after the size. Note
that the size is only approximate; no individual
scaling is done for different characters. Remember
to escape special characters like *. Optionally,
-So c(o)lumn (3-D) extending from base to z. size sets
base width (Use xsize/ysize if not the same).
Append u if size is in x-units [Default is plot-
distance units]. By default, base = 0. Append bbase
to change this value.
-Sp (p)oint. No size needs to be specified.
-Ss (s)quare. size is diameter of circumscribing cir
cle.
-St (t)riangle. size is diameter of circumscribing cir
cle.
-Su c(u)be (3-D). size sets length of all sides. Append
u if size is in x-units [Default is plot-distance
units].
-Sv (v)ector. Direction and length must be found in
columns 4 and 5. size means
arrowwidth/headlength/headwidth in [[Default is
0.075c/0.3c/0.25c (or 0.03i/0.12i/0.1i)]. By
default arrow attributes remains invariant to the
length of the arrow. To have the size of the vector
scale down with decreasing size, append nnorm,
where vectors shorter than norm will have their
attributes scaled by length/norm.
-SV Same as -Sv, except azimuth should be given instead
of direction. The azimuth will be mapped into an
angle based on the chosen map projection (-Sv
leaves the directions unchanged.)
-Sw pie wedge. Start and stop directions (in degrees
counter-clockwise from horizontal) for pie slice
must be found in columns 4 and 5.
-Sx (x)cross. size is diameter of circumscribing cir
cle.
-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
UNIX_TIME and UNIX_TIME_POS can affect the appear
ance; see the gmtdefaults man page for details.
-V Selects verbose mode, which will send progress
reports to stderr [Default runs "silently"].
line of symbol with selected pen.
-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].
-: Toggles between (longitude,latitude) and (lati
tude,longitude) input/output. [Default is (longi
tude,latitude)]. Applies to geographic coordinates
only.
-c Specifies the number of plot copies. [Default is 1]
-bi Selects binary input. Append s for single precision
[Default is double]. Append n for the number of
columns in the binary file(s). [Default is the
required number of columns given the settings].
EXAMPLES
To plot blue columns (width = 1.25 cm) at the positions
listed in the file heights.xyz on a 3-D projection of the
space (0-10), (0-10), (0-100), with tickmarks every 2, 2,
and 10, viewing it from the southeast at 30 degree eleva
tion, try:
psxyz heights.xyz -R0/10/0/10/0/100 -Jx1.25c -Jz0.125c
-So1.25c -G0/0/255 -B2:XLABEL:/2:YLABEL:/10:ZLABEL::."3-D
PLOT":15 -E135/30 -Uc -W -P > heights.ps
BUGS
No hidden line removal is employed for polygons and lines.
Symbols, however, are first sorted according to their dis
tance from the viewpoint so that nearby symbols will over
print more distant ones should they project to the same
x,y position.
psxyz cannot handle filling of polygons that contain the
south or north pole. For such a polygon, make a copy and
split it into two and make each explicitly contain the
polar point. The two polygons will combine to give the
desired effect when filled; to draw outline use the origi
nal polygon.
The -N option does not adjust the BoundingBox information
so you may have to post-process the PostScript outout with
epstool or ps2epsi to obtain a correct BoundingBox.
SEE ALSO
gmt(l), psbasemap(l), psxy(l)
Man(1) output converted with
man2html