GRASS logo


v.neighbors - Neighborhood analysis tool for vector point maps.
Makes each cell value a function of the attribute values assigned to the vector points or centroids in a radius around it, and stores new cell values in an output raster map.


vector, algebra, statistics, raster, aggregation


v.neighbors --help
v.neighbors input=name [layer=string] output=name method=string size=float [points_column=name] [cats=range] [where=sql_query] [--overwrite] [--help] [--verbose] [--quiet] [--ui]


Allow output files to overwrite existing files
Print usage summary
Verbose module output
Quiet module output
Force launching GUI dialog


input=name [required]
Name of input vector map
Or data source for direct OGR access
Layer number or name
Vector features can have category values in different layers. This number determines which layer to use. When used with direct OGR access this is the layer name.
Default: 1
output=name [required]
Name for output raster map
method=string [required]
Method for aggregate statistics (count if non given)
Options: count, sum, average, median, mode, minimum, maximum, range, stddev, variance, diversity
Default: count
size=float [required]
Neighborhood diameter in map units
Column name of points map to use for statistics
Column of points map must be numeric
Category values
Example: 1,3,7-9,13
WHERE conditions of SQL statement without 'where' keyword
Example: income < 1000 and population >= 10000

Table of contents


This module makes each cell value a function of the attribute values assigned to the vector points or centroids in an area around the cell with a diameter of size around it, and stores the new cell values in the output raster map layer. By default, the module just counts the number of points. The user can also choose amongst a variety of aggregate statistics using the parameter method. These statistics are calculated on the attributes in the point_column. Using the usual cats and where parameters the user can chose to take only a subset of the points into account.

Note that size is defined as the diameter, and so has to be twice the wanted search radius, and that the module works within the current computational region which can be adjusted using g.region. If the vector map falls completely outside the current region, the module will stop with an error.


Count the number of schools for a given grid (North Carolina sample dataset):
g.region vector=schools_wake res=100 -p -a
v.neighbors input=schools_wake output=schools_wake_3000m method=count size=3000

d.mon wx0
d.rast schools_wake_3000m
d.vect schools_wake
The result gives for each grid cell the number of points (here: schools) not farther than 1500 meter away (half of the given size value) from the respective cell center.

Calculate the mean capacity of schools for the same grid:

v.neighbors input=schools_wake output=schools_capacity point_column=CAPACITYTO \
            method=average size=3000


r.neighbors, v.vect.stats


Radim Blazek,
Moritz Lennert


Available at: v.neighbors source code (history)

Latest change: Thursday Jan 26 14:10:26 2023 in commit: cdd84c130cea04b204479e2efdc75c742efc4843

Main index | Vector index | Topics index | Keywords index | Graphical index | Full index

© 2003-2024 GRASS Development Team, GRASS GIS 8.3.3dev Reference Manual