[GRASS-user] raster query on the basis of its labels

Michael Barton wrote:

Temez,

As usual with GRASS, there are several ways to do this. If you just want to
*display* the cells from selected categories, you can do this in d.rast
(raster layer in the GUI). For cell maps, you just specify...

d.rast map=[geology] catlist=1,2,3,6
d.rast map=[geology] catlist=1-3,6

For floating point maps, use vallist instead of catlist.

If you want to do something more sophisticated with single maps, you can use
r.reclass (makes a 'virtual' map of selected categories) or r.recode (makes
a 'real' map) of selected categories. That is, you can reclassify one group
of categories into 1 and leave the rest NULL to show some part of your map.

For more sophisticated queries, you can use r.cross that will produce a new
map with all unique combinations of cell values for a series of maps.

Or you can use the map calculator.

Hope this helps.

Michael

On 1/10/07 11:16 AM, "temiz" <temiz@deprem.gov.tr> wrote:

Jachym Cepicky wrote:
    

hi,

    if( @map, 1,0)

should work

jachym

On Tue, Jan 09, 2007 at 01:44:51PM -0500, temiz wrote:
  

thank you
But I think I need to give you more detail

my raster map is actually a geological map and includes so many rock
type categories ( over 100).

something like this: (of course they are not separete fields)
~~~~~~~~
97 Tkisd claystone-siltstone-sandstone (rock type ) eocene
~~~~~~~
if I want to query my raster map on its rock type. Say, to display rock
group containing claystone. what should I do ?

I can do it on vector map using sql.
But I have to stay in raster side. Because I analyse the areas
containing claystone and its slope angle higher than 20 deg
(another raster map).

shortly I need a command like this:
r.mapcalc result="if((@map ~ 'claystone' && slp> 30),1,0)) # regular
expression on a text and this claystone exists
in many rock group. So using cat numbers is not practical.

I think r.mapcalc makes query on numerical values.

so what might be solution be ?

regards

__________________________________________
Michael Barton, Professor of Anthropology
School of Human Evolution & Social Change
Center for Social Dynamics & Complexity
Arizona State University

phone: 480-965-6213
fax: 480-965-7671
www: http://www.public.asu.edu/~cmbarton

thank you

Now by this, it seems to be ok.
~~~~~~~~~
awk '/claystone/ {print ++num_lines,$0}' jeo_cat2.txt > claystone.txt
r.reclass in=bk_jeo2 out=claystone < claystone.txt
~~~~~~~~~

--
Ahmet Temiz

--
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.