class_docstr: Interpolate a function defined on the nodes of a triangulation by
  using the planes defined by the three function values at each corner of
  the triangles.
  
  LinearInterpolator(triangulation, z, default_value=numpy.nan)
  
  triangulation -- Triangulation instance
  z -- the function values at each node of the triangulation
  default_value -- a float giving the default value should the interpolating
    point happen to fall outside of the convex hull of the triangulation
  
  At the moment, the only regular rectangular grids are supported for
  interpolation.
  
      vals = interp[ystart:ystop:ysteps*1j, xstart:xstop:xsteps*1j]
  
  vals would then be a (ysteps, xsteps) array containing the interpolated
  values. These arguments are interpreted the same way as numpy.mgrid.
  
  Attributes:
    planes -- (ntriangles, 3) array of floats specifying the plane for each
      triangle.
  
  Linear Interpolation
  --------------------
  Given the Delauany triangulation (or indeed *any* complete triangulation) we
  can interpolate values inside the convex hull by locating the enclosing
  triangle of the interpolation point and returning the value at that point of
  the plane defined by the three node values.
  
      f = planes[tri,0]*x + planes[tri,1]*y + planes[tri,2]
  
  The interpolated function is C0 continuous across the convex hull of the
  input points. It is C1 continuous across the convex hull except for the
  nodes and the edges of the triangulation.
class_docstr_tok: ["Interpolate","a","function","defined","on","the","nodes","of","a","triangulation","by","using","the","planes","defined","by","the","three","function","values","at","each","corner","of","the","triangles",".","LinearInterpolator","(","triangulation",",","z",",","default_value=numpy.nan",")","triangulation","--","Triangulation","instance","z","--","the","function","values","at","each","node","of","the","triangulation","default_value","--","a","float","giving","the","default","value","should","the","interpolating","point","happen","to","fall","outside","of","the","convex","hull","of","the","triangulation","At","the","moment",",","the","only","regular","rectangular","grids","are","supported","for","interpolation",".","vals","=","interp","[","ystart",":","ystop",":","ysteps","*","1j",",","xstart",":","xstop",":","xsteps","*","1j","]","vals","would","then","be","a","(","ysteps",",","xsteps",")","array","containing","the","interpolated","values",".","These","arguments","are","interpreted","the","same","way","as","numpy.mgrid",".","Attributes",":","planes","--","(","ntriangles",",","3",")","array","of","floats","specifying","the","plane","for","each","triangle",".","Linear","Interpolation","--","--","--","--","--","--","--","--","--","--","Given","the","Delauany","triangulation","(","or","indeed","*","any","*","complete","triangulation",")","we","can","interpolate","values","inside","the","convex","hull","by","locating","the","enclosing","triangle","of","the","interpolation","point","and","returning","the","value","at","that","point","of","the","plane","defined","by","the","three","node","values",".","f","=","planes","[","tri,0","]","*","x","+","planes","[","tri,1","]","*","y","+","planes","[","tri,2","]","The","interpolated","function","is","C0","continuous","across","the","convex","hull","of","the","input","points",".","It","is","C1","continuous","across","the","convex","hull","except","for","the","nodes","and","the","edges","of","the","triangulation","."]
code: def __init__(self, triangulation, z, default_value=np.nan):
      self.triangulation = triangulation
      self.z = np.asarray(z, dtype=np.float64)
      self.default_value = default_value
  
      self.planes = compute_planes(
          triangulation.x,
          triangulation.y,
          self.z,
          triangulation.triangle_nodes,
      )
  
file_path: nupic-legacy/external/linux32arm/lib/python2.7/site-packages/matplotlib/delaunay/interpolate.py
imports: import numpy
  from matplotlib._delaunay import compute_planes, linear_interpolate_grid, nn_interpolate_grid
  from matplotlib._delaunay import nn_interpolate_unstructured
label_desc: Use image node_id 1 to create a new LinearInterpolator object from inherited base classes: object with example: obj = LinearInterpolator(triangulation, z, default_value)