[R-sig-Geo] rasterize shape file and output as .img

Roger Bivand Roger.Bivand at nhh.no
Sat Apr 4 12:26:57 CEST 2009


On Fri, 3 Apr 2009, milton ruser wrote:

> Hi Roger,
>
> I think I am making something wrong (see the error message, please).
> reser is the polygon object that I read from a shapefile.
>
> Thanks for your time.
>
> milton
>
>> class(reser)
> [1] "SpatialPolygonsDataFrame"
> attr(,"package")
> [1] "sp"
>> head(reser at data)
>            DOCNAME  area_ha ClassCover
> 22 JRN-720 - 271,0m 8022.687          1
>>
>> reser.bbox<-bbox(reser)
>> resolution<-c(60,60) #meters
>>
>> #GridTopology(cellcentre.offset, cellsize, cells.dim)
>> ccoffset<-c(reser.bbox[,1])
>> cdim<-round((reser.bbox[,2]-reser.bbox[,1])/resolution[1],0)+1
>>
>> gride<-GridTopology(ccoffset, resolution, cdim)
>>
>> str(gride)
> Formal class 'GridTopology' [package "sp"] with 3 slots
>  ..@ cellcentre.offset: Named num [1:2] 283916 8578881
>  .. ..- attr(*, "names")= chr [1:2] "r1" "r2"
>  ..@ cellsize         : num [1:2] 60 60
>  ..@ cells.dim        : int [1:2] 313 1280
>>
>> overlay(reser at data$ClassCover, gride)
> Error in function (classes, fdef, mtable)  :
>  unable to find an inherited method for function "overlay", for signature
> "numeric", "GridTopology"

Try SpatialGrid(gride) instead - look at getMethods(overlay) if it helps 
(it may not, there are many methods). Also see the thread on this list (a 
reply: http://finzi.psych.upenn.edu/R/Rhelp08/2009-February/005049.html). 
RSiteSearch("rasterize") does help.

Roger

>
>
> On Fri, Apr 3, 2009 at 3:40 PM, Roger Bivand <Roger.Bivand at nhh.no> wrote:
>
>> On Fri, 3 Apr 2009, milton ruser wrote:
>>
>> Dear all,
>>>
>>> I have a set of shapefile and I need rasterized it using a collumn called
>>> ClassCover,
>>> and with the resolution of 30 meters. How can I do this on R?
>>>
>>
>> Use bbox() of the SpatialPolygonDataFrame to find the extent. Create a
>> GridTopology object, and overlay the polygons - possibly just with
>> ClassCover - and the SpatialGrid built with the GridTopology object. This
>> should yield a SpatialGridDataFrame with a single band, with NAs outside the
>> polygons, and the polygon column values for raster cells where their centres
>> fall inside the polygons.
>>
>> Another thing is that I need to output the raster as IMG (erdas/arcgis)
>>> format.
>>>
>>
>> writeGDAL in rgdal.
>>
>> Hope this helps,
>>
>> Roger
>>
>>
>>> Any help are welcome.
>>>
>>> Best wishes,
>>>
>>> milton
>>> Brasil/Toronto
>>>
>>> require(maptools)
>>>> require(sp)
>>>> require(rgdal)
>>>> todos<-readShapePoly("myshape.shp")
>>>> sessionInfo()
>>>>
>>> R version 2.9.0 alpha (2009-03-26 r48224)
>>> i386-pc-mingw32
>>> locale:
>>>
>>> LC_COLLATE=English_Canada.1252;LC_CTYPE=English_Canada.1252;LC_MONETARY=English_Canada.1252;LC_NUMERIC=C;LC_TIME=English_Canada.1252
>>> attached base packages:
>>> [1] stats     graphics  grDevices utils     datasets  methods   base
>>> other attached packages:
>>> [1] rgdal_0.6-7     maptools_0.7-20 sp_0.9-32       foreign_0.8-34
>>> loaded via a namespace (and not attached):
>>> [1] grid_2.9.0      lattice_0.17-20
>>>
>>>        [[alternative HTML version deleted]]
>>>
>>> _______________________________________________
>>> R-sig-Geo mailing list
>>> R-sig-Geo at stat.math.ethz.ch
>>> https://stat.ethz.ch/mailman/listinfo/r-sig-geo
>>>
>>>
>> --
>> Roger Bivand
>> Economic Geography Section, Department of Economics, Norwegian School of
>> Economics and Business Administration, Helleveien 30, N-5045 Bergen,
>> Norway. voice: +47 55 95 93 55; fax +47 55 95 95 43
>> e-mail: Roger.Bivand at nhh.no
>>
>>
>

-- 
Roger Bivand
Economic Geography Section, Department of Economics, Norwegian School of
Economics and Business Administration, Helleveien 30, N-5045 Bergen,
Norway. voice: +47 55 95 93 55; fax +47 55 95 95 43
e-mail: Roger.Bivand at nhh.no



More information about the R-sig-Geo mailing list