[Numpy-discussion] Convert data into rectangular grid

jah jah.mailinglist at gmail.com
Mon Sep 28 20:45:15 EDT 2009


On Mon, Sep 28, 2009 at 4:48 PM, <josef.pktd at gmail.com> wrote:

> On Mon, Sep 28, 2009 at 7:19 PM, jah <jah.mailinglist at gmail.com> wrote:
> > Hi,
> >
> > Suppose I have a set of x,y,c data (something useful for
> > matplotlib.pyplot.plot() ).  Generally, this data is not rectangular at
> > all.  Does there exist a numpy function (or set of functions) which will
> > take this data and construct the smallest two-dimensional arrays X,Y,C (
> > suitable for matplotlib.pyplot.contour() ).
> >
> > Essentially, I want to pass in the data and a grid step size in the x-
> and
> > y-directions.  The function would average the c-values for all points
> which
> > land in any particular square.  Optionally, I'd like to be able to
> specify a
> > value to use when there are no points in x,y which are in the square.
> >
> > Hope this makes sense.
>
> If I understand correctly  numpy.histogram2d(x, y, ..., weights=c) might do
> what you want.
>
> There was a recent thread on its usage.
>

It is very close, but it normed=True, will first normalize the weights
(undesirably) and then it will normalize the normalized weights by dividing
by the cell area.  Instead, what I want is the cell value to be the average
off all the points that were placed in the cell.  This seems like a common
use case, so I'm guessing this functionality is present already.  So if 3
points with weights [10,20,30] were placed in cell (i,j), then the cell
should have value 20 (the arithmetic mean of the points placed in the cell).

Here is the desired use case:  I have a set of x,y,c values that I could
pass into matplotlib's scatter() or hexbin().   I'd like to take this same
set of points and transform them so that I can pass them into matplotlib's
contour() function.  Perhaps matplotlib has a function which does this.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/numpy-discussion/attachments/20090928/27ce9640/attachment.html>


More information about the NumPy-Discussion mailing list