[R] voronoi.mosaic chokes?

From: Andrew Pierce <adp179_at_psu.edu>
Date: Wed, 09 May 2007 00:20:58 -0400

Hi all,

I am running R 2.5.0 under Windows XP Media Center Edition. Here's a problem that's been stumping me for a few days now, and I can't find anything useful in the archives. I am using voronoi.mosaic (tripack package) to create proximity polygons for a study of vegetation competition and dynamics. The points lists are read in from a file for each plot, then 8 duplicates are translated around the edges of the plot (Toroidal edge correction). This is completed using the torus(...) function that I wrote myself.

VMuncorrected is the voronoi mosaic that is not toroidally edge corrected VMcorrected is the voronoi mosaic that is toroidally edge corrected

>treemap = read.table('af1.txt', sep = "\t", header = 1)
>VMuncorrected = voronoi.mosaic(treemap$X, treemap$Y)

###Use the torus function to create 8 copies around the study region
>toroid = torus(treemap$X, treemap$Y, 25, 25)

>VMcorrected = voronoi.mosaic(toroid[,1], toroid[,2], duplicate = "remove")

Here's the problem. When I read in the points for the data file listed above ('af1.txt'), both calls to voronoi.mosaic() work fine. (The second one takes about 1.5 seconds because there are 1147 points in the toroidally corrected set).

However, when I read in the points from the next file ('af2.txt'), the first call to voronoi.mosaic() works. The next call (to torus()) also works fine. But the second call to voronoi.mosaic() causes R to freeze completely requiring Ctrl-Alt-Del.

I have 10 sets of points and this problem happens for about 5 of them.

Factors I have ruled out:
-too many points in the call (one set had 1147 and worked fine while the next set had 801 and froze R)
-duplicate points (taken care of by voronoi.mosaic(..., duplicate = "remove") and also independently verified by exporting the data. no duplicates in either the original or the toroidally corrected set) -points too close together in space (minimum distance between two points in 'af1.txt' is 0.1414 and works fine. minimum distance in the second set, 'af2.txt', is 0.2236, and this set causes R to freeze) -not enough memory (each data set is run in a new R session-i.e. R was quit between each attempt)
-'flukiness' (the problem happens the same way every time for the problem data sets, and the code runs fine every time for the non-problem data sets)
-file formats (each text file has the same number of columns, all the labels for the columns are identical, and the columns are always in the same order)
-outdated versions (I am using R 2.5.0 and updated the tripack package within the last week. also, I update packages about once a month)

This is a very frustrating problem because I get no errors indicating any problem with the data, and I have checked the data over and over for any type of error and found none. If anyone has ANY helpful suggestions, I would love to hear about any and all of them.


p.s. - for those of you who are really intrigued, I can email you the .txt files and the code for the torus() function.

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 and provide commented, minimal, self-contained, reproducible code. Received on Wed 09 May 2007 - 04:30:46 GMT

Archive maintained by Robert King, hosted by the discipline of statistics at the University of Newcastle, Australia.
Archive generated by hypermail 2.2.0, at Wed 09 May 2007 - 05:31:42 GMT.

Mailing list information is available at https://stat.ethz.ch/mailman/listinfo/r-help. Please read the posting guide before posting to the list.