[GRASS-dev] [GRASS GIS] #3572: v.vect.stats creates cat & cat_ then fails

GRASS GIS trac at osgeo.org
Mon Jun 4 12:52:51 PDT 2018


#3572: v.vect.stats creates cat & cat_ then fails
--------------------------+------------------------------
  Reporter:  simondedman  |      Owner:  grass-dev@…
      Type:  defect       |     Status:  new
  Priority:  normal       |  Milestone:
 Component:  Default      |    Version:  7.4.0
Resolution:               |   Keywords:
       CPU:  x86-64       |   Platform:  MSWindows CygWin
--------------------------+------------------------------

Comment (by mmetz):

 Replying to [ticket:3572 simondedman]:
 > Within QGis, GRASS processing toolbox element v.vect.stats counts point
 layer data within polygon areas layers & calculates statistics. If you
 want to calculate stats & counts for multiple fields in the points layer
 (e.g. you have data for various years) you have to repeat the process each
 time, selecting the layer and field, giving the resultant count & stats
 columns appropriate names, which produces a new polygon layer with the two
 new data fields appended, AND a field called 'cat'. If you use this new
 poly layer as the input for e.g. the next year's data, the output layer
 will already have 'cat' from the first run, so will create 'cat_'. The
 user likely doesn't care about these fields and there's no info presented
 during the process about what this is - it looks like a counter but I
 could very well be wrong. In any case: if you run the process a THIRD
 time, the code is defeated (presumably) because 'cat' is present so it
 tries 'cat_' which is also present, so it fails. Subsequently the user has
 to deduce that this is the problem with no help, then go to layer
 properties, source fields, edit, select cat & cat_, delete fields, unedit,
 save.
 >
 > Proposal:
 > 1. have an option in the dialogue box to create 'cat' field (or not) and
 explain what it is. Turned on by default.
 > 2. Have cat field naming schema: cat0, cat1 etc, up to cat9999999 above
 which point it'll break the 10 character limit. Notwithstanding if you ran
 v.vect.stats 10 million times manually you'd experience the heat death of
 the universe before you hit the 10 character limit.

 The problem can be solved if QGIS uses `v.out.ogr -s` to skip export of
 GRASS category ID ('cat') attribute.

-- 
Ticket URL: <https://trac.osgeo.org/grass/ticket/3572#comment:1>
GRASS GIS <https://grass.osgeo.org>



More information about the grass-dev mailing list