Veronica Andreo and the GRASS GIS community
NCSU GeoForAll Lab
at the
Center for Geospatial Analytics
NC State University
FOSS4G Europe, Tartu, July 1-7, 2024
Geek open-source command line GIS
Open-source desktop GIS
Processing backend in QGIS
Image source: baharmon.github.io/grass-in-qgisGeovisualization and data analytics tool in R or quarto notebooks
Geovisualization and data analytics tool in Python notebooks
Geoprocessing engine running in an HPC environment
Geospatial platform for developing custom models
Cloud geoprocessing backend
Image source: neteler.gitlab.io/actinia-introduction/Supervised classification with Support Vector Machines
v.fill.holes: Fill holes in areas by keeping only outer boundaries
by Vaclav Petras
r.info elevation format=json
{
"north": 228500,
"south": 215000,
"nsres": 10,
"east": 645000,
"west": 630000,
"ewres": 10,
"rows": 1350,
"cols": 1500,
"cells": 2025000,
"datatype": "FCELL",
"ncats": 255,
"min": 55.578792572021484,
"max": 156.32986450195312,
"map": "elevation",
...
}
JSON output format support (format="json")
in multiple tools
(e.g., r.report, r.info, v.db.select, t.rast.list, etc.)
r.horizon: Output for multiple points, distances, and many other improvements
Anna Petrasova, funded by NSF Award #2322073, granted to Natrx, Inc.grass.script
Python package:
Greatly simplified the creation of new projects in Python without a running session (no more chicken and egg problems)
import grass.script as gs
import grass.jupyter as gj
gs.create_location("cordoba_utm21s", epsg="32721")
gj.init("cordoba_utm21s")
See create_project doc.
grass.jupyter
Python package:
grass.jupyter.SeriesMap
class for animating series of vectors or rasters. See grass.jupyter.SeriesMap doc.ipyleaflet
integration to create a map in ipyleaflet and add GRASS data in a single line
series = gj.SeriesMap(height = 500)
series.add_rasters(["elevation_shade", "geology", "soils"])
series.add_vectors(["streams", "streets", "viewpoints"])
series.d_barscale()
series.show()
The Python API, command line, and GUI are now using project instead of location for the main component of the data hiearchy.
i.eodag: Downloads imagery datasets from various providers through the EODAG library.
v.extract input=urbanarea where="NAME = 'Durham'" output=durham
i.eodag -l start=2022-05-25 end=2022-06-01 clouds=30 \
map=durham dataset=S2_MSI_L2A provider=cop_dataspace
Enable users to query attribute values and draw geometries, display and change the computational region, support for custom CRS
r.what map=MOD11B3.A2015001.h11v05.single_LST_Day_6km points=firestations format=json
[
{
"easting": 620856.95858763403,
"northing": 230066.38313210499,
"MOD11B3.A2015001.h11v05.single_LST_Day_6km": {
"value": 14045
}
},
{
"easting": 625331.91859749099,
"northing": 229990.82160762601,
"MOD11B3.A2015001.h11v05.single_LST_Day_6km": {
"value": 14099
}
},
{
"easting": 615797.66547487001,
"northing": 213363.99261982701,
"MOD11B3.A2015001.h11v05.single_LST_Day_6km": {
"value": 14031
}
}
]
Note: The NSF program is aiming at sustainability, not adding features, fixing bugs, or ongoing maintenance.
Ask a question, get a special sticker
veroandreo@gmail.com
veroandreo.github.io/grass-gis-talks
Funded by NSF award 2303651