r.li.padrange(1grass)

πŸ’– r.li.padrange πŸ’–

okay bestie, gather round, because today we're meeting r.li.padrange from the GRASS User's Manual family β€” she calculates the range of patch area size on a raster map, and honestly? she eats. πŸ“

✨ NAME ✨

r.li.padrange β€” Calculates range of patch area size on a raster map πŸ¦‹

πŸŽ€ KEYWORDS πŸŽ€

raster, landscape structure analysis, patch index


πŸ’… SYNOPSIS πŸ’…

r.li.padrange
r.li.padrange --help
r.li.padrange input=name config=name output=name  [--overwrite]
[--help]  [--verbose]  [--quiet]  [--ui]

🌸 Flags 🌸

  • --overwrite β€” Allow output files to overwrite existing files (she's brave like that, no cap)
  • --help β€” Print usage summary
  • --verbose β€” Verbose module output
  • --quiet β€” Quiet module output (shh 🀫)
  • --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

πŸ‘‘ DESCRIPTION πŸ‘‘

So like, r.li.padrange calculates the range of patch area sizes in hectares as:

with:

  • amax: max patch area size
  • amin: min patch area size

This index is calculated using a 4 neighbour algorithm β€” and the way that diagonal cells are ignored when tracing a patch? iconic. literally she just doesn't look at them. periodt. ✨


🫢 NOTES 🫢

🚨 bestie do NOT use absolute path names for the config and output file/map parameters. fr fr.

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

And lowkey important: if the sample area contains only NULL values then r.li.padrange returns NULL. that's it, that's the answer, nothing to see here πŸ’€


πŸ”₯ EXAMPLES πŸ”₯

To calculate range of patch area size 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.padrange input=my_map conf=my_conf output=my_out

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.padrange input=forests conf=movwindow7 out=forests_padrange_mov7
r.univar forests_padrange_mov7

Forest map (North Carolina sample dataset) example:

g.region raster=landclass96 -p
r.mapcalc "forests = if(landclass96 == 5, 1, null() )"
r.li.padrange input=forests conf=movwindow7 out=forests_padrange_mov7
# verify
r.univar forests_padrange_mov7
r.to.vect input=forests output=forests type=area
d.mon wx0
d.rast forests_padrange_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 🌟

  • Michael Shapiro - CERL (patch identification)
  • Markus Metz (statistics)

main character credits, honestly 🫑


πŸ’œ SOURCE CODE πŸ’œ

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

Latest change: Friday Apr 17 01:04:26 2026 in commit: 32a143358df26b2e518b03c7e0d79541e8d1e5b1

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


and that's the whole vibe check, bestie πŸ’– this page is living its best life as part of the Β© 2003-2026 GRASS Development Team, GRASS 8.5.0 Reference Manual β€” and under the hood it's GRASS 8.5.0 tagging along as r.li.padrange(1grass) πŸŽ€ slay, go map something. 🌸✨

πŸ“¦ where this page comes from