Hi, did you send this to the list because you want to add it to the docs (like here <a href="http://docs.scipy.org/doc/scipy/reference/tutorial/ndimage.html">http://docs.scipy.org/doc/scipy/reference/tutorial/ndimage.html</a>) ? <br>
<br>Would you like access to the documentation wiki and add it yourself? In that case go to <a href="http://docs.scipy.org/numpy/accounts/register/">http://docs.scipy.org/numpy/accounts/register/</a> and let us know your username so you can get edit permissions.<br>
<br>Cheers,<br>Ralf<br><br><div class="gmail_quote">On Fri, Oct 2, 2009 at 6:52 PM, denis <span dir="ltr">&lt;<a href="mailto:denis-bz-gg@t-online.de">denis-bz-gg@t-online.de</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Folks,<br>
  here is a small tutorial example of scipy.ndimage.map_coordinates:<br>
<br>
Say Cities is an n x 2 array of [latitide,longitude] coordinates, like<br>
    Paris = [48.9, 2.4]<br>
    Rome = [41.9, 12.5]<br>
    Greenwich = [51.5, 0]<br>
    Cities = np.array([ Paris, Rome, Greenwich ])<br>
<br>
and A is a 91 x 360 array of temperatures at integer [lat,long] --<br>
A[0] along the equator, A[:,0] along the prime meridian through<br>
Greenwich.<br>
Then<br>
................................................................................<br>
    z = scipy.ndimage.map_coordinates( A, Cities.T, order=order )<br>
................................................................................<br>
<br>
is the 3 temperatures at Paris, Rome and Greenwich -- approximately,<br>
depending on order.<br>
The transpose Cities.T is used because map_coordinates takes columns,<br>
not rows.<br>
(&quot;RuntimeError: invalid shape for coordinate array&quot;<br>
may mean that you forgot the .T .)<br>
<br>
If order is 0, map_coordinates rounds [lat,long] to the nearest<br>
integers: the temperature at Paris is approximated by A[50,2].<br>
If 1, it does bilinear interpolation in the square with corners<br>
A[48,2], A[48,3], A[49,2], A[49,3] for Paris.<br>
If 2, it does quadratic interpolation over the 9 points A[48:51, 1:4].<br>
And so on, up to order 5; the default is order=3 (Catmull-Rom ?)<br>
Order 1, bilinear, is much faster than 2 or 3.<br>
<br>
What happens to A[51,-1] etc. west of Greenwich ?  See the mode=<br>
option.<br>
<br>
Of course the values in A may be arrays -- colors, sounds, anything<br>
that can be blended or interpolated -- not just scalars.<br>
<br>
Links:<br>
<br>
<a href="http://docs.scipy.org/doc/scipy/reference/tutorial/ndimage.html" target="_blank">http://docs.scipy.org/doc/scipy/reference/tutorial/ndimage.html</a><br>
<a href="http://www.scipy.org/Cookbook/Interpolation" target="_blank">http://www.scipy.org/Cookbook/Interpolation</a><br>
<a href="http://en.wikipedia.org/wiki/Multivariate_interpolation" target="_blank">http://en.wikipedia.org/wiki/Multivariate_interpolation</a> ff.<br>
<br>
For an introduction to interpolation methods, see ... NR ?<br>
<br>
For the reverse problem of turning scattered data to a regular grid,<br>
see<br>
<a href="http://matplotlib.sourceforge.net/api/mlab_api.html#matplotlib.mlab.griddata" target="_blank">http://matplotlib.sourceforge.net/api/mlab_api.html#matplotlib.mlab.griddata</a><br>
.<br>
_______________________________________________<br>
SciPy-User mailing list<br>
<a href="mailto:SciPy-User@scipy.org">SciPy-User@scipy.org</a><br>
<a href="http://mail.scipy.org/mailman/listinfo/scipy-user" target="_blank">http://mail.scipy.org/mailman/listinfo/scipy-user</a><br>
</blockquote></div><br>