[R] Need frequency distribution for x,y coordinates
Prof Brian Ripley
ripley at stats.ox.ac.uk
Sat Feb 11 11:38:59 CET 2006
On Sat, 11 Feb 2006, Roger Bivand wrote:
> On Sat, 11 Feb 2006, mark shanks wrote:
>
>> I have a set of data in x,y coordinates across the range of -5 to 5 in each
>> dimension. I would like to obtain the frequency distribution of the
>> different points, and then graph them so you can see which of the points are
>> the most frequently occurring.
>>
>> This would seem to be easy in Matlab, which has the hist3 command for doing
>> frequency distributions/histograms in 3 dimensions. However, as far as I can
>> tell, R does not have a hist3 command.
>
> See contributed package ash, function bin2:
>
>> xy <- cbind(x=runif(250,-5,5), y=runif(250,-5,5))
>> bins <- bin2(xy, ab=matrix(c(-5,-5,5,5),2,2))
>> image(bins$nc)
>
> or
>
>> filled.contour(bins$nc)
>
> Using the x and y arguments to image or filled.contour, you can set the
> axes, and asp=1 to preserve aspect.
>
> See also function kde2d in package MASS - included in the standard
> distribution.
And density plots are usually a lot better than histograms for
understanding 2D data.
> IMO, 3D histograms can mislead because perception depends on viewer
> position. All of the above give readily interpreted visualisations based
> on colour class intervals.
But if you really want one, see demo("hist3d") in package rgl, which
allows you to change your position interactively and uses translucency.
>> Is there any easy way to do this in R? I'm investigating whether matlab or R
>> is more suitable for our needs, but don't want to reject R due to my present
>> ignorance of its functions.
--
Brian D. Ripley, ripley at stats.ox.ac.uk
Professor of Applied Statistics, http://www.stats.ox.ac.uk/~ripley/
University of Oxford, Tel: +44 1865 272861 (self)
1 South Parks Road, +44 1865 272866 (PA)
Oxford OX1 3TG, UK Fax: +44 1865 272595
More information about the R-help
mailing list