NAME
r.li.patchdensity - Calculates patch density index on a raster map, using a 4 neighbour algorithm
KEYWORDS
raster,
landscape structure analysis,
patch index
SYNOPSIS
r.li.patchdensity
r.li.patchdensity --help
r.li.patchdensity input=name config=name output=name [--overwrite] [--help] [--verbose] [--quiet] [--ui]
Flags:
- --overwrite
- Allow output files to overwrite existing files
- --help
- Print usage summary
- --verbose
- Verbose module output
- --quiet
- Quiet module output
- --ui
- Force launching GUI dialog
Parameters:
- input=name [required]
- Name of input raster map
- config=name [required]
- Configuration file
- output=name [required]
- Name for output raster map
r.li.patchdensity calculates the "patch density index",
the number of patches per square kilometer, as:
with:
- A:sampling area size
- Npatch: number of patches
This index is calculated using a 4 neighbour algorithm, diagonal cells
are ignored when tracing a patch.
Do not use absolute path names for the
config and
output
file/map parameters.
If the "moving window" method was selected in
g.gui.rlisetup, then the
output will be a raster map, otherwise an ASCII file will be generated in
the folder
C:\Users\userxy\AppData\Roaming\GRASS8\r.li\output\
(MS-Windows) or
$HOME/.grass8/r.li/output/ (GNU/Linux).
A sample area of only NULL values is considered to have zero patches,
that is, the result is always ≥ 0.
To calculate patch density index on map
my_map, using
my_conf configuration file (previously defined with
g.gui.rlisetup) and saving results in
my_out, run:
r.li.patchdensity input=my_map conf=my_conf output=my_out
Example for Spearfish forest areas:
g.region raster=landcover.30m -p
# extract forested areas:
r.category landcover.30m
r.mapcalc "forests = if(landcover.30m >= 41 && landcover.30m <= 43, 1, null())"
# patch density (7x7 moving window defined in g.gui.rlisetup):
r.li.patchdensity forests conf=movwindow7 out=forests_p_dens7
r.univar forests_p_dens7
d.rast.leg forests_p_dens7
r.to.vect forests out=forests feature=area
d.vect forests type=boundary
Forest map (North Carolina sample dataset) example:
g.region raster=landclass96 -p
r.mapcalc "forests = if(landclass96 == 5, 1, null() )"
r.li.patchdensity input=forests conf=movwindow7 out=forests_patchdensity_mov7
# verify
r.univar forests_patchdensity_mov7
r.to.vect input=forests output=forests type=area
d.mon wx0
d.rast forests_patchdensity_mov7
d.vect forests type=boundary
r.li - package overview
g.gui.rlisetup
McGarigal, K., and B. J. Marks. 1995. FRAGSTATS: spatial pattern
analysis program for quantifying landscape structure. USDA For. Serv.
Gen. Tech. Rep. PNW-351. (
PDF)
Michael Shapiro - CERL (patch identification)
Markus Metz (statistics)
SOURCE CODE
Available at:
r.li.patchdensity source code
(history)
Latest change: Sunday Feb 12 15:51:56 2023 in commit: 7d6ff54e985c1579e11b74c230cb8fa68a9aa928
Main index |
Raster index |
Topics index |
Keywords index |
Graphical index |
Full index
© 2003-2023
GRASS Development Team,
GRASS GIS 8.3.dev Reference Manual