[R-sig-Geo] closest distance between irregularly-shaped polygons

Roger Bivand Roger.Bivand at nhh.no
Wed Feb 22 11:16:30 CET 2012


On Tue, 21 Feb 2012, Kemp, Michael wrote:

> Hey Nick,
>
> There was a previous discussion on this topic in the R-sig-geo mailing 
> list.  Follow the discussion here... 
> https://stat.ethz.ch/pipermail/r-sig-geo/2009-March/005216.html

And see how the cshapes package does this (using JTS and Java to simplify 
the polygons, and Great Circle distances between polygon boundary points).

If you project, then gDistance in rgeos will do this:

library(maptools)
xx <- readShapeSpatial(system.file("shapes/sids.shp",
   package="maptools")[1], proj4string=CRS("+proj=longlat +datum=NAD27"))
library(rgdal)
xx_utm <- spTransform(xx, CRS("+proj=utm +zone=17 +datum=NAD83"))
library(rgeos)
pD <- gDistance(xx_utm, xx_utm, byid=TRUE)
str(pD)


Roger

>
> Hope this helps.
> Regards,
> Michael
>
>
> -----Original Message-----
> From: r-sig-geo-bounces at r-project.org [mailto:r-sig-geo-bounces at r-project.org] On Behalf Of Nick Matzke
> Sent: Tuesday, February 21, 2012 3:49 AM
> To: r-sig-geo at r-project.org
> Subject: [R-sig-Geo] closest distance between irregularly-shaped polygons
>
> Hi everyone,
>
> I have a number of irregularly-shaped polygons (from
> shapefiles) in geographic (unprojected lat/long) coordinates.
>
> I would like to measure:
>
> 1. the distance between the polygon centroids (which is easy), and also
>
> 2. the *closest* distances of each polygon to each of the others
>
> Is there an easy function or method for doing the latter?
> If not, all I can think of is to cycle through all the vertices and do point-to-point distances until I get the closest, although this seems wasteful and might even give the wrong answer in certain situations.
>
> Any help or suggestions very much appreciated!
>
> Thanks!
> Nick
>
>
> --
> ====================================================
> Nicholas J. Matzke
> Ph.D. Candidate, Graduate Student Researcher
>
> Huelsenbeck Lab
> Center for Theoretical Evolutionary Genomics
> 4151 VLSB (Valley Life Sciences Building) Department of Integrative Biology University of California, Berkeley
>
> Graduate Student Instructor, IB200B
> Principles of Phylogenetics: Ecology and Evolution http://ib.berkeley.edu/courses/ib200b/
> http://phylo.wikidot.com/
>
>
> Lab websites:
> http://ib.berkeley.edu/people/lab_detail.php?lab=54
> http://fisher.berkeley.edu/cteg/hlab.html
> Dept. personal page:
> http://ib.berkeley.edu/people/students/person_detail.php?person=370
> Lab personal page:
> http://fisher.berkeley.edu/cteg/members/matzke.html
> Lab phone: 510-643-6299
> Dept. fax: 510-643-6264
>
> Cell phone: 510-301-0179
> Email: matzke at berkeley.edu
>
> Mailing address:
> Department of Integrative Biology
> 1005 Valley Life Sciences Building #3140 Berkeley, CA 94720-3140
>
> -----------------------------------------------------
> "[W]hen people thought the earth was flat, they were wrong.
> When people thought the earth was spherical, they were wrong. But if you think that thinking the earth is spherical is just as wrong as thinking the earth is flat, then your view is wronger than both of them put together."
>
> Isaac Asimov (1989). "The Relativity of Wrong." The Skeptical Inquirer, 14(1), 35-44. Fall 1989.
> http://chem.tufts.edu/AnswersInScience/RelativityofWrong.htm
>
> _______________________________________________
> R-sig-Geo mailing list
> R-sig-Geo at r-project.org
> https://stat.ethz.ch/mailman/listinfo/r-sig-geo
>
> _______________________________________________
> R-sig-Geo mailing list
> R-sig-Geo at r-project.org
> https://stat.ethz.ch/mailman/listinfo/r-sig-geo
>

-- 
Roger Bivand
Department of Economics, NHH Norwegian School of Economics,
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