Provided by: grass-doc_6.4.3-3_all bug


       r.category  - Manages category values and labels associated with user-specified raster map


       raster, category


       r.category help
       r.category       map=name        [cats=range[,range,...]]         [vals=float[,float,...]]
       [fs=character|space|tab]         [raster=name]         [rules=name]        [format=string]
       [coefficients=mult1,offset1,mult2,offset2]   [--verbose]  [--quiet]

           Name of input raster map

           Category values
           Example: 1,3,7-9,13

           Comma separated value list
           Example: 1.4,3.8,13

           Field separator
           Output field separator
           Default: tab

           Raster map from which to copy category table

           File containing category label rules (or "-" to read from stdin)

           Default label or format string for dynamic labeling
           Used when no explicit label exists for the category

           Dynamic label coefficients
           Two pairs of category multiplier and offsets, for $1 and $2


       r.category prints the category values and labels for the raster  map  layer  specified  by
       map=name to standard output. You can also use it to set category labels for a raster map.

       The  user  can specify all needed parameters on the command line, and run the program non-
       interactively. If the user does not specify  any  categories  (e.g.,  using  the  optional
       cats=range[,range,...]   argument),  then all the category values and labels for the named
       raster map layer that occur in the  map  are  printed.   The  entire  map  is  read  using
       r.describe,  to determine which categories occur in the map. If a listing of categories is
       specified, then the labels for  those  categories  only  are  printed.  The  cats  may  be
       specified  as  single  category  values,  or  as  ranges  of  values.  The  user  may also
       (optionally) specify that a field separator other than a space or tab be used to  separate
       the  category  value  from  its  corresponding  category label in the output, by using the
       fs=character|space|tab option (see example below). If no field separator is  specified  by
       the user, a tab is used to separate these fields in the output, by default.

       The  output  is  sent  to  standard  output in the form of one category per line, with the
       category value first on the  line,  then  an  ASCII  TAB  character  (or  whatever  single
       character or space is specified using the fs parameter), then the label for the category.


       Any ASCII TAB characters which may be in the label are replaced by spaces.

       The output from r.category can be redirected into a file, or piped into another program.

   Input from a file
       The  rules  option  allows the user to assign category labels from values found in a file.
       The label can refer to a single category, range of categories, floating point value, or  a
       range of floating point values.  The format is given as follows.
        If the filename is given as "-", the category labels are read from stdin

   Default and dynamic category labels
       Default  and dynamic category labels can be created for categories that are not explicitly
       labeled.  The coefficient line can be followed by explicit category labels which  override
       the format label generation.
          0:no data
          2:     .
          5:     .               ## explicit category labels
          7:     .
        explicit labels can be also of the form:
          5.5:5:9 label description
          15:30  label description

       In the format line

                     $1 refers to the value num*5.0+1000 (ie, using the first 2 coefficients)

                     $2 refers to the value num*5.0+1005 (ie, using the last 2 coefficients)
       $1.2 will print $1 with 2 decimal places.

       Also,  the  form  $?xxx$yyy$  translates into yyy if the category is 1, xxx otherwise. The
       $yyy$ is optional. Thus

       $1 meter$?s

       will become: 1 meter (for category 1)
       2 meters (for category 2), etc.

       format='Elevation:     $1.2     to     $2.2     feet'        ##      Format      Statement
       coefficients="5.0,1000,5.0,1005"   ## Coefficients

       The  format  and  coefficients  above would be used to generate the following statement in
       creation of the format appropriate category string for category "num":

       sprintf(buff,"Elevation: %.2f to %.2f feet", num*5.0+1000, num*5.0*1005)

       Note: while both the format and coefficent lines must be present  a  blank  line  for  the
       format string will effectively suppress automatic label generation.

       To  use  a  "$"  in  the  label without triggering the plural test, put "$$" in the format

       Use 'single quotes' when using  a  "$"  on  the  command  line  to  avoid  unwanted  shell


       r.category map=soils
         prints  the  values and labels associated with all of the categories in the soils raster
       map layer;
       r.category map=soils cats=10,12,15-20
        prints only the category values and labels for soils map layer categories 10, 12, and  15
       through 20; and
       r.category map=soils cats=10,20 fs=':'
         prints  the  values  and  labels  for soils map layer categories 10 and 20, but uses ":"
       (instead of a tab) as the character separating  the  category  values  from  the  category
       values in the output.

       Example output:

       10:Dumps, mine, Cc
       20:Kyle clay, KaA

       Example defining category labels:

              r.category diseasemap rules=- << EOF
              1:potential absence
              2:potential presence
               sets the categoy values 1 and 2 to respective text labels.


       Respect the fs= field separator setting for input rules.


       UNIX Manual entries for awk and sort

       r.coin, r.describe, d.what.rast,


       Michael Shapiro, U.S. Army Construction Engineering Research Laboratory
       Hamish Bowman, University of Otago, New Zealand (label creation options)

       Last changed: $Date: 2009-02-26 18:58:59 -0800 (Thu, 26 Feb 2009) $

       Full index

       © 2003-2013 GRASS Development Team