Soanes, Louise
2012-Feb-23 12:06 UTC
[R] using shapefiles in adehabitat/ converting shapefile to spatial pixel data frame
Hello I wonder if anybody can help, I am using the package adehabitatHR to estimate the potential distribution of a species using the command "domain" In the example given in the AdehabitatHS manual a map containing elevation information is loaded (class= spatial pixels data frame) as well as the GPS points of the animals being tracked, these are then plotted on each other and estimation of habitat suitability performed. I have a map containing sea depth information in the form of a shapefile which I want to relate to some GPS tracks I have, however I believe that the shapefile with my sea depth information has to be of the class spatial pixels data frame before I can perform many of the analysis in AdehabitatHS, I have tried converting the shapefile to a spatial pixel data frame using the sp package by exporting the data from the attribute table in my depth shapefile then importing it into R as a csv file (see my attempts below)>depth<-read.csv("depthmap.csv") >pts = depth[c("x", "y")] >y = SpatialPixels(SpatialPoints(pts))suggested tolerance minimum: 1 Error in points2grid(points, tolerance, round) : dimension 1 : coordinate intervals are not constant> depth<-read.csv("a.csv") > coordinates(depth) <- c("x", "y") > points2grid(depth)suggested tolerance minimum: 1 Error in points2grid(depth) : dimension 1 : coordinate intervals are not constant Bur these do not seem to work, does anyone have any ideas? Many thanks Louise Soanes School of Environmental Sciences University of Liverpool Brownlow Hill L69 3GP http://sites.google.com/site/puffinislandseabirdresearch/ [[alternative HTML version deleted]]
Michael Sumner
2012-Feb-24 00:36 UTC
[R] using shapefiles in adehabitat/ converting shapefile to spatial pixel data frame
The error you are getting says that the coordinates provided do not define a regular grid (within the tolerance allowed). Are the points in your CSV file really a regular grid, or do they represent a surface by way of irregular points? You could check this manually by plotting: depth<-read.csv("depthmap.csv") plot(depth$x, depth$y) (Otherwise, this is a text file - csv is "comma separated values" and has nothing to do with an ESRI Shapefile. ) If your points really are a regular grid, or "near enough" to one you can use the tolerance argument to SpatialPixels, see library(sp) ?SpatialPixels vignette("sp") for some introduction to these data structures and tools. Also, R-Sig-Geo is a better target list for these topics so please use that. Cheers, Mike. On Thu, Feb 23, 2012 at 11:06 PM, Soanes, Louise <Louise.Soanes at liverpool.ac.uk> wrote:> Hello > I wonder if anybody can help, > I am using the package adehabitatHR to estimate the potential distribution of a species using the command "domain" > > In the example given in the AdehabitatHS manual a map containing elevation information is loaded (class= spatial pixels data frame) as well as the GPS points of the animals being tracked, these are then plotted on each other and estimation of habitat suitability performed. > > I have a map containing sea depth information in the form of a shapefile which I want to relate to some GPS tracks I have, however I believe that the shapefile with my sea depth information has to be of the class spatial pixels data frame before I can perform many of the analysis in AdehabitatHS, > > I have tried converting the shapefile to a spatial pixel data frame using the sp package by exporting the data from the attribute table in my depth shapefile then importing it into R as a csv file (see my attempts below) > >>depth<-read.csv("depthmap.csv") >>pts = depth[c("x", "y")] >>y = SpatialPixels(SpatialPoints(pts)) > > suggested tolerance minimum: 1 > Error in points2grid(points, tolerance, round) : > ?dimension 1 : coordinate intervals are not constant > >> depth<-read.csv("a.csv") >> coordinates(depth) <- c("x", "y") >> points2grid(depth) > suggested tolerance minimum: 1 > Error in points2grid(depth) : > ?dimension 1 : coordinate intervals are not constant > > Bur these do not seem to work, does anyone have any ideas? > > Many thanks > Louise Soanes > > > School of Environmental Sciences > University of Liverpool > Brownlow Hill > L69 3GP > > http://sites.google.com/site/puffinislandseabirdresearch/ > > > ? ? ? ?[[alternative HTML version deleted]] > > ______________________________________________ > R-help at r-project.org mailing list > https://stat.ethz.ch/mailman/listinfo/r-help > PLEASE do read the posting guide http://www.R-project.org/posting-guide.html > and provide commented, minimal, self-contained, reproducible code.-- Michael Sumner Institute for Marine and Antarctic Studies, University of Tasmania Hobart, Australia e-mail: mdsumner at gmail.com