On 27/04/2019 22:05, Mehrdad Varedi wrote:

Hi Everyone,
I have detail explanations of connecting to an existing dataset in GRASS from R in this address: https://grasswiki.osgeo.org/wiki/R_statistics/rgrass7

What I hope I could do is to create a GRASS dataset in R on the fly and without the need to install GRASS or create a dataset on it. Is there any way to do this?

Maybe this will help:

(You must have GRASS installed, of course)


# Parameters for the GRASS installation and temporary GRASS mapset

GISBase = "/usr/lib/grass76"
# Set these as you like

GISDbase = "/tmp"
Location = "tmp_location"
Mapset = "tmp_mapset"
georef = "EPSG:2039"

mapset_path = file.path(GISDbase, Location, Mapset)

# Now run the 'grass' command within R and

# use the -c and -e flags to create the temp mapset, then exit

setup_grass_cmd = paste("grass", "-c", georef, "-e", mapset_path)

system(setup_grass_cmd)


# Load the R grass interface and initialize GRASS within R,

# using the temporary mapset from above

library(rgrass7)
initGRASS(home=tempdir(),
          gisBase = GISBase,
          gisDbase = GISDbase,
          location = Location,
          mapset = Mapset,
          remove_GISRC = TRUE)


# Try some GRASS commands

input_tif = "isrlat12.tif"

grass_rast = "isrlat12"
execGRASS("r.in.gdal",  flags = c("o","overwrite"),
          input = input_tif,
          output = grass_rast)
execGRASS("g.region", flags="p", raster = grass_rast)

I did not add a command to remove the temporary mapset.  Something like:

unlink(file.path(GISDbase, Location), recusive = TRUE) might be necessary


One other note: you probably will get better suggestions on the R-sig-geo list...


i.e. I have a vector /raster file and use that to identify the region and details required to set up a dataset and use GRASS functions just by including rgrass library.

Thanks for your help and attention,

Mehrdad
--
Mehrdad Varedi

_______________________________________________
grass-user mailing list
[email protected]
https://lists.osgeo.org/mailman/listinfo/grass-user
-- 
Micha Silver
Ben Gurion Univ.
Sde Boker, Remote Sensing Lab
cell: +972-523-665918

_______________________________________________
grass-user mailing list
[email protected]
https://lists.osgeo.org/mailman/listinfo/grass-user

Reply via email to