Learn R Programming

rgdal (version 0.3-7)

readGDAL: Read/write between GDAL grid maps and Spatial objects

Description

The functions read or write GDAL grid maps. They will set the spatial reference system if available.

Usage

readGDAL(fname, offset, region.dim, ..., half.cell=c(0.5, 0.5), silent = FALSE)
writeGDAL(dataset, fname, drivername = "GTiff", type = "Float32", mvFlag = NA)

Arguments

fname
file name of grid map
offset
Number of rows and columns from the origin (usually the upper left corner) to begin reading from; presently ordered (y,x) - this may change
region.dim
The number of rows and columns to read from the dataset; presently ordered (y,x) - this may change
half.cell
Used to adjust the intra-cell offset from corner to centre, usually as default, but may be set to c=(0,0) if needed; presently ordered (y,x) - this may change
silent
logical; if TRUE, comment is suppressed
...
arguments passed to either getRasterData, or getRasterTable, depending on rotation angles (see below); see the rgdal documentation for the available options (subsetting etc.)
drivername
GDAL driver name
type
GDAL write data type (others than this default have not been tested)
mvFlag
missing value flag for output file

Value

  • read.GDAL returns the data in the file as a Spatial object.

    Usually, GDAL maps will be north-south oriented, in which case the rgdal function getRasterData is used to read the data, and an object of class SpatialGridDataFrame-class is returned.

    Some map formats supported by GDAL are not north-south oriented grids. If this is the case, readGDAL returns the data as a set of point data, being of class SpatialPointsDataFrame-class. If the points are on a 45 or 90 degree rotated grid, you can try to enforce gridding later on by e.g. using gridded(x)=TRUE.

See Also

as.image.SpatialGridDataFrame, image, readAsciiGrid

Examples

Run this code
x <- readGDAL(system.file("external/test.ag", package="sp")[1])
class(x)
image(x)
summary(x)
x@data[[1]][x@data[[1]] > 10000] <- NA
summary(x)
image(x)

x <- readGDAL(system.file("external/simple.ag", package="sp")[1])
class(x)
image(x)
summary(x)
y = readGDAL(system.file("pictures/Rlogo.jpg", package = "rgdal")[1])
summary(y)
spplot(y, zcol=1:3, names.attr=c("red","green","blue"), 
	col.regions=grey(0:100/100),
	main="example of three-layer (RGB) raster image", as.table=TRUE)
data(meuse.grid)
gridded(meuse.grid) = ~x+y
proj4string(meuse.grid) = CRS("+init=epsg:28992")
fn <- tempfile()
writeGDAL(meuse.grid["dist"], fn)
mg2 <- readGDAL(fn)
proj4string(mg2)
SP27GTIF <- readGDAL(system.file("pictures/SP27GTIF.TIF", package = "rgdal")[1])
summary(SP27GTIF)
image(SP27GTIF, col=grey(1:99/100))
cea <- readGDAL(system.file("pictures/cea.tif", package = "rgdal")[1])
summary(cea)
image(cea, col=grey(1:99/100))
erdas_spnad83 <- readGDAL(system.file("pictures/erdas_spnad83.tif", package = "rgdal")[1])
summary(erdas_spnad83)
image(erdas_spnad83, col=grey(1:99/100))

Run the code above in your browser using DataLab