Utiliser R avec GRASS

Avant la première utilisation (dans R):

install.packages('spgrass6', dependencies=TRUE)

Utilisateurs Mac:
install.packages('spgrass6', type='source', dependencies=TRUE)

Commandes spgrass 6:

execGRASS               execute GRASS commands (when launched from R)
system                  execute GRASS commands (when launched from GRASS)
readRAST6               read GRASS raster files
writeRAST6              write GRASS raster files
readVECT6               read GRASS vector object files
writeVECT6              write GRASS vector object files
gmeta6                  read GRASS metadata from the current LOCATION
getLocationProj         return a PROJ.4 string of projection information
gmeta2grd               create a GridTopology object from the GRASS region
vInfo                   return vector geometry information
vColumns                return vector database columns information
vDataCount              return count of vector database rows
vect2neigh              return area neighbours with shared boundary length

Exemple de code dans R

library(spgrass6)
library(rgdal)
initGRASS(gisBase='/usr/lib/grass64',gisDbase='/home/glaroc/OSGIS/Day 2/',location='31h05',mapset='landsat',override=TRUE)
#Sous Windows, le chemin est du genre C:/GRASS/

gmeta6()
elevp=readVECT6('Elevation_points')

RegHyd=readVECT6('Region_hydrique')
#Routes=readVECT6('Routes')
execGRASS("g.list",type="vect")
plot(RegHyd,lwd=2,col='blue')
plot(elevp,pch=19,lwd=0.5,col='brown',cex=0.5,add=TRUE)

Utiliser PostGIS avec QGIS

Téléchargez PostgreSQL pour votre plate-forme.

Suivez les instructions pour configurer Postgres sur votre ordinateur, incluant la création d'un utilisateur. Assurez-vous que l'extension pour PostGIS est installée.

Créer une base de données qui peut accueillir des objets spatiaux. Remplacer my_spatial_db par le nom de la base de données désiré. Ce code doit être exécuté dans PostgreSQL.

CREATE DATABASE my_spatial_db TEMPLATE=template_postgis

Pour importer des fichiers vectoriels dans la base de données, utilisez le plugin DBManager de QGIS. Vous devez configurer une nouvelle connexion à une base de données en spécifiant les informations spécifiques à votre configuration de PostgreSQL.

Type de requête possible:

SELECT avg(elevation) FROM elevation_points, section_vote_31h5_utm WHERE section_vote_31h5_utm.tri_cep= 'JACQUESCARTIER' AND ST_within(elevation_points.geom,section_vote_31h5_utm.geom) 

Cette requête nous donnera l'élévation moyenne pour tous les points d'élévation situés dans le district Jacques-Cartier.

Vous pouvez accéder à la liste des fonctions spécifiques à PostGIS ici.