GRD2CPT(1)

NAME
grd2cpt - Read a grdfile and make a color palette file

SYNOPSIS
grd2cpt grdfile [ -Ccptmaster ] [ -D ] [ -Enlevels ] [ -I ] [ -Lminlimit/maxlimit ] [ -M ] [ -N ] [ -Q[i|o] ] [ -Rwest/east/south/north[r] ] [ -Szstart/zstop/zinc ] [ -T-|+|_|= ] [ -V ] [ -Z ]

DESCRIPTION
grd2cpt reads a grdfile and writes a color palette (cpt) file to standard output. The cpt file is based on an existing master cpt file of your choice, and the mapping from data value to colors is through the data's cumulative distribution function (CDF), so that the colors are histogram equalized. Thus if the resulting cpt file is used with the grdfile and grdimage with a linear projection, the colors will be uniformly distributed in area on the plot. Let z be the data values in the grdfile. Define CDF(Z) = (# of z < Z) / (# of z in grdfile). (NaNs are ignored). These z-values are then normalized to the master cpt file and colors are sampled at the desired intervals.
The color palette includes three additional colors beyond the range of z-values. These are the background color (B) assigned to values lower than the lowest z-value, the foreground color (F) assigned to values higher than the highest z-value, and the NaN color (N) painted whereever values are undefined.
If the master cpt file includes B, F, and N entries, these will be copied into the new master file. If not, the parameters COLOR_BACKGROUND, COLOR_FOREGROUND, and COLOR_NAN from the .gmtdefaults4 file or the command line will be used. This default behavior can be overruled using the options -D, -M or -N.
The color model (RGB, HSV or CMYK) of the palette created by makecpt will be the same as specified in the header of the master cpt file. When there is no COLOR_MODEL entry in the master cpt file, the COLOR_MODEL specified in the .gmtdefaults4 file or on the command line will be used.

grdfile
    The 2-D binary grdfile used to derive the color palette table.

OPTIONS

-C  Selects the master color table to use in the interpolation. Choose among the built-in tables (type grd2cpt to see the list) or give the name of an existing cpt file [Default gives a rainbow cpt file].

-D  Select the colors for lowest and highest z-values in the output cpt file as the back- and foreground colors that will be written to the cpt file [Default uses the colors specified in the master file, or those defined by the parameters COLOR_BACKGROUND, COLOR_FOREGROUND, and COLOR_NAN].

-E  Create a linear color table by dividing the grid z-range into nlevels equidistant slices.

-I  Reverses the sense of color progression in the master cpt file. Also exchanges the foreground and background colors, including those specified by the parameters COLOR_BACKGROUND and COLOR_FOREGROUND.

-L  Limit range of cpt file to minlimit/maxlimit, and don't count data outside range when estimating CDF(Z). [Default uses min and max of data.]

-M  Overrule background, foreground, and NaN colors specified in the master cpt file with the values of the parameters COLOR_BACKGROUND, COLOR_FOREGROUND, and COLOR_NAN specified in the .gmtdefaults4 file or on the command line. When combined with -D, only COLOR_NAN is considered.

-N  Do not write out the background, foreground, and NaN-color fields [Default will write them].

-Q  Selects a logarithmic interpolation scheme [Default is linear]. -Qi expects input z-values to be log10(z), assigns colors, and writes out z [Default]. -Qo takes log10(z) first, assigns colors, and writes out z.

-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 wesn. The two shorthands -Rg -Rd stand for global domain (0/360 or -180/+180 in longitude respectively, with -90/+90 in latitude). For calendar time coordinates you may either give relative time (relative to the selected TIME_EPOCH and in the selected TIME_UNIT; append t to -JX|x), or 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 as indicated (however, input/output and plotting formats are flexible).

-S  Set steps in cpt file. Calculate entries in cpt file from zstart to zstop in steps of (zinc). [Default chooses arbitrary values by a crazy scheme.]

-T  Force the color table to be symmetric about zero (from -R to +R). Append flag to set the range R: - for R =|zmin|, + for R = |zmax|, _ for R = min(|zmin|, |zmax|), or = for R = max(|zmin|, |zmax|).

-V  Verbose operation. This will write CDF(Z) estimates to stderr. [Default is silent.]

-Z  Will create a continuous color palette. [Default is discontinuous, i.e., constant color intervals]

EXAMPLES
Sometimes you don't want to make a cpt file (yet) but would find it helpful to know that 90% of your data lie between z1 and z2, something you cannot learn from grdinfo. So you can do this to see some points on the CDF(Z) curve (use -V option to see more):

grd2cpt mydata.grd -V > /dev/null

To make a cpt file with entries from 0 to 200 in steps of 20, and ignore data below zero in computing CDF(Z), and use the built-in master cpt file relief, run

grd2cpt mydata.grd -Crelief -L0/10000 -S0/200/20 > mydata.cpt

SEE ALSO
gmtdefaults(1), GMT(1), grdhisteq(1), grdinfo(1), makecpt(1)