NAME¶
psxyz - Plot lines, polygons, and symbols in 3-D
SYNOPSIS¶
psxyz files -Jparameters
-Rwest/east/south/north/zmin/zmax[r]
[ -Btickinfo ] [
-Ccptfile ] [
-Eazimuth/elevation ] [
-G fill ] [ -H[nrec] ]
[ -K ] [ -L ] [
-M[flag] ] [ -N ] [
-O ] [ -P ] [
-S[symbol][size] ] [
-U[/dx/dy/][label] ] [
-V ] [ -W[pen] ] [
-X x-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 symbol 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 symbols are specified then
the symbol code (see
-S below) must be present as last column in the
input. Multiple segment files may be plotted using the
-M option. If no
symbols 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 MEASURE_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 origin)
-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)
-Jqlon0/scale (Equidistant Cylindrical Projection (Plate
Carree))
-Jtlon0/scale (TM - Transverse Mercator, with Equator 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 manpages.
- -Jz
- Sets the vertical scaling (for 3-D maps). Same syntax as
-Jx.
- -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¶
No space between the option flag and the associated arguments.
- -B
- Sets map boundary tickmark intervals. See psbasemap
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 -Z val
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 .gmtdefaults 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].
- -bo
- Selects binary output. Append s for single precision
[Default is double].
- -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 normalized
to have the same area as a circle of given size, while the corresponding
lowercase symbols are circumscribed by the circle. Choose between:
- -S
- Read symbol code (see below) from last column in 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
circle.
- -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 distance 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 triangle. [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
circumscribing 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, you
may append % font to select a particular font [Default is
ANOT_FONT].
- -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
circle.
- -St
- (t)riangle. size is diameter of
circumscribing circle.
- -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.075 c/0.3c/0.25c (or
0.03i/0.12 i/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
circle.
- -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.). The GMT parameters UNIX_TIME and
UNIX_TIME_POS can affect the appearance; see the gmtdefaults man
page for details.
- -V
- Selects verbose mode, which will send progress reports to
stderr [Default runs "silently"].
- -W
- Set pen attributes. [Defaults: width = 1, color = 0/0/0,
texture = solid]. Implicitly draws the outline 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
(latitude,longitude) input/output. [Default is (longitude,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
elevation, try:
psxyz heights.xyz
-R0/10/0/10/0/100
-Jx1.25
c -Jz0.125
c
-So1.25
c -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 distance from the viewpoint so that nearby
symbols will overprint 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 original 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(1gmt),
psbasemap(1gmt),
psxy(1gmt)