## NAME

r.li.edgedensity - Calculates edge density index on a raster map, using a 4 neighbour algorithm

## KEYWORDS

raster, landscape structure analysis, patch index

## SYNOPSIS

r.li.edgedensity
r.li.edgedensity --help
r.li.edgedensity [-b] input=name config=name output=name [patch_type=string] [--overwrite] [--help] [--verbose] [--quiet] [--ui]

### Flags:

-b
  Exclude border edges
--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
patch_type=string
  The value of the patch type
  It can be integer, double or float; it will be changed in function of map type

## DESCRIPTION

r.li.edgedensity calculates:

- the density of all edges of patch type k , or
- the density of all edges in the sampling area if k is not specified,

with:

- k: patch type
- m: number of patch types
- n: number of edge segments of patch type k
- eik :total edge length in the landscape involving patch type k
- Area: total landscape area

The unit is meters per hectare.

## NOTES

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).

If the input raster map contains only NULL values then r.li.edgedensity consider to have 0 patches.
If area is 0 r.li.edgedensity returns NULL; this is only possible if input raster is masked.

## EXAMPLES

To calculate the edge 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.edgedensity input=my_map conf=my_conf output=my_out

To calculate edge density index of patch_type 34, using "my_conf" configuration file and on map "my_map", saving results in "my_out" file run:

    r.li.edgedensity input=my_map conf=my_conf output=my_out patch_type=34

Forest map (Spearfish sample dataset) example:

    g.region raster=landcover.30m -p
    r.mapcalc "forests = if(landcover.30m >= 41 && landcover.30m <= 43,1,null())"
    r.li.edgedensity input=forests conf=movwindow7 out=forests_edgedens_mov7
    r.univar forests_edgedens_mov7

Forest map (North Carolina sample dataset) example:

    g.region raster=landclass96 -p
    r.mapcalc "forests = if(landclass96 == 5, 1, null() )"
    r.li.edgedensity input=forests conf=movwindow7 out=forests_edgedensity_mov7

    # verify
    r.univar forests_edgedensity_mov7
    r.to.vect input=forests output=forests type=area
    d.mon wx0
    d.rast forests_edgedensity_mov7
    d.vect forests type=boundary

## SEE ALSO

r.li - package overview, g.gui.rlisetup

## REFERENCES

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)

## AUTHORS

Serena Pallecchi, student of Computer Science University of Pisa (Italy).
Commission from Faunalia Pontedera (PI), Italy (www.faunalia.it)
Markus Metz

## SOURCE CODE

Available at: r.li.edgedensity source code (history)

Accessed: Thursday Oct 30 22:16:57 2025

Main index | Raster index | Topics index | Keywords index | Graphical index | Full index

© 2003-2025 GRASS Development Team, GRASS GIS 8.4.1 Reference Manual