title: SciPy interpolation of large matrix
body: <p>I have a ndarray (Z) with some 500000 elements on a rectangular grid (X, Y). </p>
  
  <p>Now I want to interpolate values at some 100 locations in x,y which are not necessarily on the grid. </p>
  
  <p>I have some code working in Matlab: </p>
  
  <pre><code>data = interp2(X,Y,Z, x,y);
  </code></pre>
  
  <p>However, when I try to use the same approach with scipy.interpolate I get various errors depending on the method. For example interp2d fails with MemoryError if i specify <code>kind = 'linear'</code> and "OverflowError: Too many data points to interpolate" if I specify <code>kind='cubic'</code>. I also tried <code>Rbf</code> and <code>bisplev</code> but they also fail. </p>
  
  <p>So the question is: Is there an interpolation function which allows for interpolations of large matrices? Is there another solution to the problem? 
  (Or do I have to code a function which picks the suitable area around the points to interpolate and calls then interp2d?)</p>
  
  <p>In addition: How to do this with complex numbers?</p>