pscontour − Contour xyz-data by direct triangulation [method]
pscontour xyzfile −Ccptfile −Jparameters −Rwest/east/south/north[r] [ −A[-][labelinfo] ] [ −B[p|s]parameters ] [ −D[dumpfile] ] [ −Eazim/elev[+wlon/lat[/z]][+vx0/y0] ] [ −G[d|f|n|l|L|x|X]params ] [ −H[i][nrec] ] [ −I ] [ −K ] [ −Lpen ] [ −N ] [ −O ] [ −P ] [ −S[p|t] ] [ −Tindexfile ] [ −U[just/dx/dy/][c|label] ] [ −V ] [ −W[+]pen ] [ −X[a|c|r][x-shift[u]] ] [ −Y[a|c|r][y-shift[u]] ] [ −ccopies ] [ −:[i|o] ] [ −b[i|o][s|S|d|D[ncol]|c[var1/...]] ] [ −m[flag] ]
pscontour
reads an ASCII [or binary] xyz-file and produces a raw
contour plot by triangulation. By default, the optimal
Delaunay triangulation is performed (using either
Shewchuk’s [1996] or Watson’s [1982] method as
selected during GMT installation; type pscontour
− to see which method is selected), but the user
may optionally provide a second file with network
information, such as a triangular mesh used for finite
element modeling. In addition to contours, the area between
contours may be painted according to the color palette file.
xyzfile
Raw ASCII (or binary, see −b) xyz data to be contoured.
−C |
name of the color palette file. Must have discrete colors if you want to paint the surface (−I). Only contours that have annotation flags set will be annotated. |
||
−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 .gmtdefaults4, but this can be overridden on the command line by appending c, i, or m to the scale/width value. When central meridian is optional, default is center of longitude range on −R option. Default standard parallel is the equator. For map height, max dimension, or min dimension, append h, +, or - to the width, respectively. |
More details can be found in the psbasemap man pages.
CYLINDRICAL PROJECTIONS:
−Jclon0/lat0/scale
(Cassini)
−Jcyl_stere/[lon0/[lat0/]]scale
(Cylindrical Stereographic)
−Jj[lon0/]scale (Miller)
−Jm[lon0/[lat0/]]scale
(Mercator)
−Jmlon0/lat0/scale (Mercator - Give
meridian and standard parallel)
−Jo[a]lon0/lat0/azimuth/scale
(Oblique Mercator - point and azimuth)
−Jo[b]lon0/lat0/lon1/lat1/scale
(Oblique Mercator - two points)
−Joclon0/lat0/lonp/latp/scale (Oblique
Mercator - point and pole)
−Jq[lon0/[lat0/]]scale
(Cylindrical Equidistant)
−Jtlon0/[lat0/]scale (TM -
Transverse Mercator)
−Juzone/scale (UTM - Universal Transverse
Mercator)
−Jy[lon0/[lat0/]]scale
(Cylindrical Equal-Area)
CONIC PROJECTIONS:
−Jblon0/lat0/lat1/lat2/scale
(Albers)
−Jdlon0/lat0/lat1/lat2/scale (Conic
Equidistant)
−Jllon0/lat0/lat1/lat2/scale (Lambert Conic
Conformal)
−Jpoly/[lon0/[lat0/]]scale
((American) Polyconic)
AZIMUTHAL PROJECTIONS:
−Jalon0/lat0[/horizon]/scale
(Lambert Azimuthal Equal-Area)
−Jelon0/lat0[/horizon]/scale
(Azimuthal Equidistant)
−Jflon0/lat0[/horizon]/scale
(Gnomonic)
−Jglon0/lat0[/horizon]/scale
(Orthographic)
−Jglon0/lat0/altitude/azimuth/tilt/twist/Width/Height/scale
(General Perspective).
−Jslon0/lat0[/horizon]/scale
(General Stereographic)
MISCELLANEOUS PROJECTIONS:
−Jh[lon0/]scale
(Hammer)
−Ji[lon0/]scale (Sinusoidal)
−Jkf[lon0/]scale (Eckert IV)
−Jk[s][lon0/]scale (Eckert
VI)
−Jn[lon0/]scale (Robinson)
−Jr[lon0/]scale (Winkel Tripel)
−Jv[lon0/]scale (Van der Grinten)
−Jw[lon0/]scale (Mollweide)
NON-GEOGRAPHICAL PROJECTIONS:
−Jp[a]scale[/origin][r|z]
(Polar coordinates (theta,r))
−Jxx-scale[d|l|ppow|t|T][/y-scale[d|l|ppow|t|T]]
(Linear, log, and power scaling)
−R |
xmin, xmax, ymin, and ymax specify the Region of interest. For geographic regions, these limits correspond to west, east, south, and north and you may specify them in decimal degrees or in [+-]dd:mm[:ss.xxx][W|E|S|N] format. Append r if lower left and upper right map coordinates are given instead of w/e/s/n. The two shorthands −Rg and −Rd stand for global domain (0/360 and -180/+180 in longitude respectively, with -90/+90 in latitude). Alternatively, specify the name of an existing grid file and the −R settings (and grid spacing, if applicable) are copied from the grid. For calendar time coordinates you may either give (a) relative time (relative to the selected TIME_EPOCH and in the selected TIME_UNIT; append t to −JX|x), or (b) absolute time of the form [date]T[clock] (append T to −JX|x). At least one of date and clock must be present; the T is always required. The date string must be of the form [-]yyyy[-mm[-dd]] (Gregorian calendar) or yyyy[-Www[-d]] (ISO week calendar), while the clock string must be of the form hh:mm:ss[.xxx]. The use of delimiters and their type and positions must be exactly as indicated (however, input, output and plot formats are customizable; see gmtdefaults). |
No space between the option flag and the associated arguments.
−A |
Give - to disable all annotations. The optional labelinfo controls the specifics of the label formatting and consists of a concatenated string made up of any of the following control arguments: |
+aangle
For annotations at a fixed angle, +an for line-normal, or +ap for line-parallel [Default].
+cdx[/dy]
Sets the clearance between label and optional text box. Append c|i|m|p to specify the unit or % to indicate a percentage of the label font size [15%].
+d |
Turns on debug which will draw helper points and lines to illustrate the workings of the quoted line setup. |
||
+ffont |
Sets the desired font [Default ANNOT_FONT_PRIMARY]. |
+g[color]
Selects opaque text boxes [Default is transparent]; optionally specify the color [Default is PAGE_COLOR]. (See SPECIFYING COLOR below).
+jjust |
Sets label justification [Default is MC]. Ignored when -SqN|n+|-1 is used. |
+kcolor
Sets color of text labels [Default is COLOR_BACKGROUND]. (See SPECIFYING COLOR below).
+llabel
Sets the constant label text.
+Lflag |
Sets the label text according to the specified flag: |
+Lh |
Take the label from the current multisegment header (first scan for an embedded −Llabel option, if not use the first word following the segment flag). For multiple-word labels, enclose entire label in double quotes. |
||
+Ld |
Take the Cartesian plot distances along the line as the label; append c|i|m|p as the unit [Default is MEASURE_UNIT]. |
||
+LD |
Calculate actual map distances; append d|e|k|m|n as the unit [Default is d(egrees), unless label placement was based on map distances along the lines in which case we use the same unit specified for that algorithm]. Requires a map projection to be used. |
||
+Lf |
Use text after the 2nd column in the fixed label location file as the label. Requires the fixed label location setting. |
||
+Lx |
As +Lh but use the headers in the xfile.d instead. Requires the crossing file option. |
+ndx[/dy]
Nudges the placement of labels by the specified amount (append c|i|m|p to specify the units). Increments are considered in the coordinate system defined by the orientation of the line; use +N to force increments in the plot x/y coordinates system [no nudging].
+o |
Selects rounded rectangular text box [Default is rectangular]. Not applicable for curved text (+v) and only makes sense for opaque text boxes. |
+p[pen]
Draws the outline of text boxsets [Default is no outline]; optionally specify pen for outline [Default is width = 0.25p, color = black, texture = solid]. (See SPECIFYING PENS below).
+rmin_rad
Will not place labels where the line’s radius of curvature is less than min_rad [Default is 0].
+ssize |
Sets the desired font size in points [Default is 9]. |
||
+uunit |
Appends unit to all line labels. If unit starts with a leading hyphen (-) then there will be no space between label value and the unit. [Default is no unit]. |
||
+v |
Specifies curved labels following the path [Default is straight labels]. |
||
+w |
Specifies how many (x, y) points will be used to estimate label angles [Default is 10]. |
+=prefix
Prepends prefix to all line labels. If prefix starts with a leading hyphen (-) then there will be no space between label value and the prefix. [Default is no prefix].
−B |
Sets map boundary annotation and tickmark intervals; see the psbasemap man page for all the details. |
||
−D |
Dump the (x,y,z) coordinates of each contour to separate files, one for each contour segment. The files will be named dumpfile_cont_segment[_i].xyz, where cont is the contour value and segment is a running segment number for each contour interval (for closed contours we append _i.) However, when −m is used in conjunction with −D a single multisegment file is created instead. |
||
−E |
Sets the viewpoint’s azimuth and elevation (for perspective view) [180/90]. For frames used for animation, you may want to append + to fix the center of your data domain (or specify a particular world coordinate point with +wlon0/lat[/z]) which will project to the center of your page size (or specify the coordinates of the projected view point with +vx0/y0). |
||
−G |
Controls the placement of labels along the contours. Choose among five controlling algorithms: |
−Gddist[c|i|m|p] or −GDdist[d|e|k|m|n]
For lower case d, give distances between labels on the plot in your preferred measurement unit c (cm), i (inch), m (meter), or p (points), while for upper case D, specify distances in map units and append the unit; choose among e (m), k (km), m (mile), n (nautical mile), or d (spherical degree). [Default is 10c or 4i].
−Gfffile.d
Reads the ascii file ffile.d and places labels at locations in the file that matches locations along the contours. Inexact matches and points outside the region are skipped.
−Gl|Lline1[,line2,...]
Give the coordinates of the end points for one or more comma-separated straight line segments. Labels will be placed where these lines intersect the contours. The format of each line specification is start_lon/start_lat/stop_lon/stop_lat. Both start_lon/start_lat and stop_lon/stop_lat can be replaced by a 2-character key that uses the justification format employed in pstext to indicate a point on the map, given as [LCR][BMT]. −GL will interpret the point pairs as defining great circles [Default is straight line].
−Gn|Nn_label
Specifies the number of equidistant labels for contours line [1]. Upper case −GN starts labeling exactly at the start of the line [Default centers them along the line]. −GN-1 places one justified label at start, while −GN+1 places one justified label at the end of contours. Optionally, append /min_dist[c|i|m|p] to enforce that a minimum distance separation between successive labels is enforced.
−Gx|Xxfile.d
Reads the multi-segment file xfile.d and places labels at the intersections between the contours and the lines inxfile.d. −GX will resample the lines first along great-circle arcs.
In addition, you may optionally append +rradius[c|i|m|p] to set a minimum label separation in the x-y plane [no limitation].
−H |
Input file(s) has header record(s). If used, the default number of header records is N_HEADER_RECS. Use −Hi if only input data should have header records [Default will write out header records if the input data have them]. Blank lines and lines starting with # are always skipped. |
||
−I |
Color the triangles using the color palette table. |
||
−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 |
Draw the underlying triangular mesh using the specified pen attributes [Default is no mesh]. (See SPECIFYING PENS below). |
||
−N |
Do NOT clip contours or image at the boundaries [Default will clip to fit inside region −R]. |
||
−O |
Selects Overlay plot mode [Default initializes a new plot system]. |
||
−P |
Selects Portrait plotting mode [Default is Landscape, see gmtdefaults to change this]. |
||
−S |
Or −Sp: Skip all input xyz points that fall outside the region [Default uses all the data in the triangulation]. Alternatively, use −St to skip triangles whose three vertices are all outside the region. |
||
−T |
Give name of file with network information. Each record must contain triplets of node numbers for a triangle [Default computes these using Delaunay triangulation (see triangulate)]. |
||
−U |
Draw Unix System time stamp on plot. By adding just/dx/dy/, the user may specify the justification of the stamp and where the stamp should fall on the page relative to lower left corner of the plot. For example, BL/0/0 will align the lower left corner of the time stamp with the lower left corner of the plot. Optionally, append a label, or c (which will plot the command string.). The GMT parameters UNIX_TIME, UNIX_TIME_POS, and UNIX_TIME_FORMAT can affect the appearance; see the gmtdefaults man page for details. The time string will be in the locale set by the environment variable TZ (generally local time). |
||
−V |
Selects verbose mode, which will send progress reports to stderr [Default runs "silently"]. |
||
−W |
Select contouring and set contour pen attributes. If the + flag is set then the contour lines are colored according to the cpt file (see −C). (See SPECIFYING PENS below). |
||
−X −Y |
Shift plot origin relative to the current origin by (x-shift,y-shift) and optionally append the length unit (c, i, m, p). You can prepend a to shift the origin back to the original position after plotting, or prepend r [Default] to reset the current origin to the new location. If −O is used then the default (x-shift,y-shift) is (0,0), otherwise it is (r1i, r1i) or (r2.5c, r2.5c). Alternatively, give c to align the center coordinate (x or y) of the plot with the center of the page based on current page size. |
||
−: |
Toggles between (longitude,latitude) and (latitude,longitude) input and/or output. [Default is (longitude,latitude)]. Append i to select input only or o to select output only. [Default affects both]. |
||
−bi |
Selects binary input. Append s for single precision [Default is d (double)]. Uppercase S or D will force byte-swapping. Optionally, append ncol, the number of columns in your binary input file if it exceeds the columns needed by the program. Or append c if the input file is netCDF. Optionally, append var1/var2/... to specify the variables to be read. [Default is 3 input columns]. Use 4-byte integer triplets for node ids (−T). |
||
−bo |
Selects binary output. Append s for single precision [Default is d (double)]. Uppercase S or D will force byte-swapping. Optionally, append ncol, the number of desired columns in your binary output file. [Default is 3 output columns]. |
||
−c |
Specifies the number of plot copies. [Default is 1]. |
||
−m |
When used in conjunction with −D a single multisegment file is created, and each contour section is preceded by a header record whose first column is flag followed by the contour level. |
SPECIFYING PENS
pen |
The attributes of lines and symbol outlines as defined by pen is a comma delimetered list of width, color and texture, each of which is optional. width can be indicated as a measure (points, centimeters, inches) or as faint, thin[ner|nest], thick[er|est], fat[ter|test], or obese. color specifies a gray shade or color (see SPECIFYING COLOR below). texture is a combination of dashes ‘-’ and dots ‘.’. |
SPECIFYING COLOR
color |
The color of lines, areas and patterns can be specified by a valid color name; by a gray shade (in the range 0−255); by a decimal color code (r/g/b, each in range 0−255; h-s-v, ranges 0−360, 0−1, 0−1; or c/m/y/k, each in range 0−1); or by a hexadecimal color code (#rrggbb, as used in HTML). See the gmtcolors manpage for more information and a full list of color names. |
To make a raw contour plot from the file topo.xyz and drawing the contours (pen = 0.5p) given in the color palette file topo.cpt on a Lambert map at 0.5 inch/degree along the standard parallels 18 and 24, use
pscontour topo.xyz −R 320/330/20/30 −Jl 18/24/0.5i −C topo.cpt −W 0.5p > topo.ps
To create a color PostScript plot of the numerical temperature solution obtained on a triangular mesh whose node coordinates and temperatures are stored in temp.xyz and mesh arrangement is given by the file mesh.ijk, using the colors in temp.cpt, run
pscontour temp.xyz −R 0/150/0/100 −Jx 0.1 −C temp.cpt −G −W 0.25p > temp.ps
Sometimes there will appear to be thin lines of the wrong color in the image. This is a round-off problem which may be remedied by using a higher value of DOTS_PR_INCH in the .gmtdefaults4 file.
GMT(1), gmtcolors(5), grdcontour(1), grdimage(1), nearneighbor(1), psbasemap(1), psscale(1), surface(1), triangulate(1)
Watson, D. F.,
1982, Acord: Automatic contouring of raw data, Comp.
& Geosci., 8, 97−101.
Shewchuk, J. R., 1996, Triangle: Engineering a 2D Quality
Mesh Generator and Delaunay Triangulator, First Workshop on
Applied Computational Geometry (Philadelphia, PA), 124-133,
ACM, May 1996.
www.cs.cmu.edu/~quake/triangle.html