Description Usage Arguments Value Author(s) Examples
Read GRASS 7 raster files from GRASS 7 into R SpatialGridDataFrame objects, and write single columns of R SpatialGridDataFrame objects to GRASS 7. readRAST
and writeRAST
use temporary binary files and r.out.bin and r.in.bin for speed reasons.
1 2 3 4 5 6 7 | readRAST(vname, cat=NULL, ignore.stderr = get.ignore.stderrOption(),
NODATA=NULL, plugin=get.pluginOption(), mapset=NULL,
useGDAL=get.useGDALOption(), close_OK=TRUE, drivername="GTiff",
driverFileExt=NULL, return_SGDF=TRUE)
writeRAST(x, vname, zcol = 1, NODATA=NULL,
ignore.stderr = get.ignore.stderrOption(), useGDAL=get.useGDALOption(),
overwrite=FALSE, flags=NULL, drivername="GTiff")
|
vname |
A vector of GRASS 7 raster file names |
cat |
default NULL; if not NULL, must be a logical vector matching vname, stating which (CELL) rasters to return as factor |
ignore.stderr |
default taking the value set by |
plugin |
default taking the value set by |
mapset |
default NULL, if plugin is TRUE, the mapset of the file to be imported will be autodetected; if not NULL and if plugin is TRUE, a character string overriding the autodetected mapset, otherwise ignored |
useGDAL |
(effectively defunct, only applies to use of plugin) default taking the value set by |
close_OK |
default TRUE - clean up possible open connections used for reading metadata; may be set to FALSE to avoid the side-effect of other user-opened connections being broken |
drivername |
default |
driverFileExt |
default NULL; otherwise string value of required driver file name extension |
return_SGDF |
default TRUE returning a |
x |
A SpatialGridDataFrame object for export to GRASS as a raster layer |
zcol |
Attribute column number or name |
NODATA |
by default NULL, in which case it is set to one less than |
overwrite |
default FALSE, if TRUE inserts |
flags |
default NULL, character vector, for example |
readRAST
returns a SpatialGridDataFrame objects with an data.frame in the data slots, and with the projection argument set. Note that the projection argument set is the the GRASS rendering of proj4, and will differ from the WKT/ESRI rendering returned by readVECT in form but not meaning. They are exchangeable but not textually identical, usually with the +ellps= term replaced by ellipsoid parameters verbatim. If return_SGDF is FALSE, a list with a GridTopology
object, a list of bands, and a proj4string is returned, with an S3 class attribute of “gridList”.
Roger S. Bivand, e-mail: Roger.Bivand@nhh.no
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 | if (nchar(Sys.getenv("GISRC")) > 0 &&
read.dcf(Sys.getenv("GISRC"))[1,"LOCATION_NAME"] == "nc_basic_spm_grass7") {
GV <- Sys.getenv("GRASS_VERBOSE")
Sys.setenv("GRASS_VERBOSE"=0)
require(rgdal)
ois <- get.ignore.stderrOption()
set.ignore.stderrOption(TRUE)
get.useGDALOption()
nc_basic <- readRAST(c("geology", "elevation"), cat=c(TRUE, FALSE),
useGDAL=FALSE)
nc_basic <- readRAST(c("geology", "elevation"), cat=c(TRUE, FALSE),
useGDAL=TRUE)
print(table(nc_basic$geology))
execGRASS("r.stats", flags=c("c", "l", "quiet"), input="geology")
boxplot(nc_basic$elevation ~ nc_basic$geology)
nc_basic$sqdem <- sqrt(nc_basic$elevation)
if ("GRASS" %in% gdalDrivers()$name) {
execGRASS("g.region", raster="elevation")
dem1 <- readRAST("elevation", plugin=TRUE, mapset="PERMANENT")
print(summary(dem1))
execGRASS("g.region", raster="elevation")
}
writeRAST(nc_basic, "sqdemSP", zcol="sqdem", flags="quiet")
execGRASS("r.info", map="sqdemSP")
execGRASS("g.remove", flags="f", name="sqdemSP", type="raster")
writeRAST(nc_basic, "sqdemSP", zcol="sqdem", useGDAL=TRUE, flags="quiet")
execGRASS("r.info", map="sqdemSP")
print(system.time(sqdemSP <- readRAST(c("sqdemSP", "elevation"),
useGDAL=TRUE, return_SGDF=FALSE)))
print(system.time(sqdemSP <- readRAST(c("sqdemSP", "elevation"),
useGDAL=TRUE, return_SGDF=TRUE)))
print(system.time(sqdemSP <- readRAST(c("sqdemSP", "elevation"),
useGDAL=FALSE, return_SGDF=TRUE)))
print(system.time(sqdemSP <- readRAST(c("sqdemSP", "elevation"),
useGDAL=FALSE, return_SGDF=FALSE)))
str(sqdemSP)
mat <- do.call("cbind", sqdemSP$dataList)
str(mat)
print(system.time(SGDF <- SpatialGridDataFrame(grid=sqdemSP$grid,
proj4string=sqdemSP$proj4string, data=as.data.frame(sqdemSP$dataList))))
summary(SGDF)
execGRASS("g.remove", flags="f", name="sqdemSP", type="raster")
execGRASS("r.mapcalc", expression="basins0 = basins - 1")
execGRASS("r.stats", flags="c", input="basins0")
basins0 <- readRAST("basins0")
print(table(basins0$basins0))
basins0 <- readRAST("basins0", plugin=FALSE)
print(table(basins0$basins0))
execGRASS("g.remove", flags="f", name="basins0", type="raster")
Sys.setenv("GRASS_VERBOSE"=GV)
set.ignore.stderrOption(ois)
}
|
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.