[R-sig-Geo] Problem with tripGrid when some segments lie outside the study area

Michael Sumner mdsumner at gmail.com
Thu Nov 24 12:55:01 CET 2011


I see, I don't know then. That's not the way tripGrid is intended to
be used so I will consider preventing that option from being set to
FALSE for this usage.

I've not explored why pixellate.psp does that in this case, but at any
rate it is strictly about spatstat and not trip.

Thanks for the heads up, I will explore preventing use of tripGrid
when spatstat.options(checksegments = FALSE).

Cheers, Mike.

On Thu, Nov 24, 2011 at 7:38 PM, Pinaud David <pinaud at cebc.cnrs.fr> wrote:
> Hi Michael,
> Yes, this error occured before, that's why I set firstly
> spatstat.options(checksegments=F) to avoid that. But in this case
> (checksegments=F), it seems that pixellate.psp() behaves "strangely" and
> adds time in cells that are not visited by the bird, in the border of the
> grid (see the plot with my example)
> I think about this alternative solution (calculation on a larger grid), but
> we faced to memory (or running time) problems. We need to do that for >800
> trips, on a 40000 cells grid... So I was thinking about clipping first the
> trip according to the grid limits, then running tripGrid(), but this problem
> (with pixellate.psp()?) occured.
> Do you have an idea how we can do that?
>
> Otherwise, your package is very usefull!
>
> Many thanks
>
> David
>
> Le 23/11/2011 22:26, Michael Sumner a écrit :
>
> I should have added that probably the best way to trim the result is to just
> trim the grid built on the full data, then there is no messy problem with
> line intersections or spatial vs time based subsetting. That is I think
> closest to your request.
>
> (This kind of "time spent" estimate is also very simplistic and dependent on
> the cell size chosen and assumptions about "straight line" movement. That is
> another thing the doc should say more clearly I think.)
>
> Cheers, Mike (author of trip)
>
>
>
> On Thursday, November 24, 2011, Michael Sumner <mdsumner at gmail.com> wrote:
>> I'm not totally sure what you are asking here since as you say and as
>> reported by pixellate.psp (from within tripGrid) your tracks do not
>> all lie entirely within the grid.
>>
>>  tgrid <- tripGrid(tr, grid = gt)
>> Error: 7 segments do not lie entirely inside the window.
>>
>> You either need to expand the grid to encompass the data or trim the
>> data to lie within the grid - this is not done automatically.
>>
>> It's also not documented in much detail so if that is the source of
>> confusion I apologise.
>>
>> An easy way to make a grid is to use ?makeGridTopology, which will
>> choose defaults based on a lot of varying input data. You can
>> initialize the extents by doing
>>
>>  makeGridTopology(tr)
>>
>> and you can control the exact options with arguments for cells.dim and so
>> on.
>>
>> Cheers, Mike.
>>
>>
>> On Wed, Nov 23, 2011 at 10:22 PM, Pinaud David <pinaud at cebc.cnrs.fr>
>> wrote:
>>> Dear all,
>>>
>>> I'm calculating time spent per cell over a grid (study area) with the
>>> package "trip", for satellite-tracked seabirds.
>>> Some birds bred outside the area of interest (Kerguelen Plateau, to
>>> design
>>> marine protected areas), so their trips didn't lie entirely in the grid.
>>> In
>>> this case, it seems that time is added in some cells that are not visited
>>> by
>>> the bird (tipically in the border of the grid).
>>> This problem seems coming from pixellate(), and because I need to set
>>> spatstat.options(checksegments=F)...
>>>
>>> Any solution?
>>>
>>> Many thanks
>>> David
>>>
>>> Here a reproducible exemple:
>>>
>>> library(trip)
>>> Le chargement a nécessité le package : sp
>>> Le chargement a nécessité le package : spatstat
>>> Le chargement a nécessité le package : mgcv
>>> This is mgcv 1.7-6. For overview type 'help("mgcv-package")'.
>>> Le chargement a nécessité le package : deldir
>>> deldir 0.0-15
>>>
>>> Please note: The process for determining duplicated points
>>> has changed from that used in version 0.0-9 (and previously).
>>>
>>> spatstat 1.23-4
>>> Type ‘help(spatstat)’ for an overview of spatstat
>>> ‘latest.news()’ for news on latest version
>>> ‘licence.polygons()’ for licence information on polygon calculations
>>>
>>> spatstat.options(checksegments=F) # to allow segment outside the window
>>>
>>> # a trip with some parts outside the study area :
>>> d <- data.frame(x = 1:10, y = c(1, 1.5, 2, 4, 5, 5.5, 8, 8, 6, 10), tms =
>>> Sys.time() + seq(10,100, 10), id = rep(1, 10))
>>> coordinates(d) <- ~x+y
>>> tr <- trip(d, c("tms", "id"))
>>>
>>> # the sutdy area :
>>> gridaa <- expand.grid(Long=seq(-0.5, 10.5, by=1), Lat=seq(3.5, 6.5,
>>> by=1))
>>> coordinates(gridaa) <- ~ Long + Lat
>>> gridded(gridaa) <- T
>>> fullgrid(gridaa) <- T
>>> gt <- getGridTopology(gridaa)
>>>
>>> # time spent per cell
>>> tgrid <- tripGrid(tr, grid = gt)
>>>
>>> image(tgrid, axes=T)
>>> points(coordinates(tr), t="l", col="blue")
>>> points(gridaa, pch="+")
>>> text(x= midpoints.psp(as.psp(tr)), col="green", pos=3, labels=1:9)
>>>
>>> sessionInfo()
>>> R version 2.13.1 (2011-07-08)
>>> Platform: i386-pc-mingw32/i386 (32-bit)
>>>
>>> locale:
>>> [1] LC_COLLATE=French_France.1252 LC_CTYPE=French_France.1252
>>> [3] LC_MONETARY=French_France.1252 LC_NUMERIC=C
>>> [5] LC_TIME=French_France.1252
>>>
>>> attached base packages:
>>> [1] stats graphics grDevices utils datasets methods base
>>>
>>> other attached packages:
>>> [1] trip_1.1-10 spatstat_1.23-4 deldir_0.0-15 mgcv_1.7-6
>>> [5] sp_0.9-88
>>>
>>> loaded via a namespace (and not attached):
>>> [1] grid_2.13.1 lattice_0.19-30 Matrix_0.9996875-3 nlme_3.1-101
>>>
>>> --
>>> ***************************************************
>>> Dr. David PINAUD
>>> Ingénieur de Recherche "Analyses spatiales"
>>>
>>> Centre d'Etudes Biologiques de Chizé - CNRS UPR1934
>>> 79360 Villiers-en-Bois, France
>>> poste 485
>>> Tel: +33 (0)5.49.09.35.58
>>> Fax: +33 (0)5.49.09.65.26
>>> http://www.cebc.cnrs.fr/
>>>
>>> ***************************************************
>>>
>>>
>>>
>>>
>>> __________ Information from ESET Mail Security, version of virus
>>> signature
>>> database 6653 (20111123) __________
>>>
>>> The message was checked by ESET Mail Security.
>>> http://www.eset.com
>>>
>>>
>>> _______________________________________________
>>> R-sig-Geo mailing list
>>> R-sig-Geo at r-project.org
>>> https://stat.ethz.ch/mailman/listinfo/r-sig-geo
>>>
>>>
>>
>>
>>
>> --
>> Michael Sumner
>> Institute for Marine and Antarctic Studies, University of Tasmania
>> Hobart, Australia
>> e-mail: mdsumner at gmail.com
>>
>
> --
> Michael Sumner
> Institute for Marine and Antarctic Studies, University of Tasmania
> Hobart, Australia
> e-mail: mdsumner at gmail.com
>
> --
> ***************************************************
> Dr. David PINAUD
> Ingénieur de Recherche "Analyses spatiales"
>
> Centre d'Etudes Biologiques de Chizé - CNRS UPR1934
> 79360 Villiers-en-Bois, France
> poste 485
> Tel: +33 (0)5.49.09.35.58
> Fax: +33 (0)5.49.09.65.26
> http://www.cebc.cnrs.fr/
>
> ***************************************************
>
> __________ Information from ESET Mail Security, version of virus signature
> database 6654 (20111123) __________
>
> The message was checked by ESET Mail Security.
> http://www.eset.com
>



-- 
Michael Sumner
Institute for Marine and Antarctic Studies, University of Tasmania
Hobart, Australia
e-mail: mdsumner at gmail.com



More information about the R-sig-Geo mailing list