[R] Question:manipulating spatial data using combination of Maptools and Splancs

Roger Bivand Roger.Bivand at nhh.no
Fri Sep 16 19:36:22 CEST 2005

On Fri, 16 Sep 2005, kostas karis wrote:

> Hi,
> I have a problem that concerns combination of the package Maptools and 
> Splancs
> I have 2 shapefiles that i want to manipulate (one of type point and one 
> polygon).I import them in R using Maptools but then i can't estimate a 
> quartic Kernel using Splancs. The package doesn't recognize the shapes 
> (invalid points and poly argument).I don't know if this is an easy task but 
> i have read both packages's manual and i can't find a liable solution. Thank 
> u for your time.

Say you have a shapefile of points, and a shapefile with one single ring 
polygon, no holes or other geometry objects, then using maptools 0.5-2:

> library(maptools)
Loading required package: foreign
Loading required package: sp
> cardiff_pts <- readShapePoints("cf_pts")
> cardiff_poly <- readShapePoly("cf_poly", verbose=TRUE)
Shapefile type: Polygon, (5), # of Shapes: 1
> plot(cardiff_poly)
> plot(cardiff_pts, add=TRUE)

Conversion is by

> splancs_pts <- coordinates(cardiff_pts)
> splancs_poly <- getPolygonCoordsSlot(getPolygonsPolygonsSlot(
+    getSpPpolygonsSlot(cardiff_poly)[[1]])[[1]])

to unpack the coordinates of the points and the single ring boundary. If 
you have more than one shape, and/or more than one ring in that shape, 
adjust the [[Shape]])[[ring]] indices to suit. Then:

> polymap(splancs_poly)
> image(kernel2d(splancs_pts, splancs_poly, h0=15, nx=100, ny=100), 
+    add=TRUE)
> pointmap(splancs_pts, add=TRUE)

works as expected. Extracting the polygon looks complicated because 
shapefiles have a "richer" geometry than splancs. Wrapper functions for 
splancs to use the sp classes now used by maptools will be available 
before long.

> ______________________________________________
> R-help at stat.math.ethz.ch mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html

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-help mailing list