code: def pchip_interpolate(xi, yi, x, der=0, axis=0):
      """
      Convenience function for pchip interpolation.
      xi and yi are arrays of values used to approximate some function f,
      with ``yi = f(xi)``.  The interpolant uses monotonic cubic splines
      to find the value of new points x and the derivatives there.
  
      See `PchipInterpolator` for details.
  
      Parameters
      ----------
      xi : array_like
          A sorted list of x-coordinates, of length N.
      yi :  array_like
          A 1-D array of real values.  `yi`'s length along the interpolation
          axis must be equal to the length of `xi`. If N-D array, use axis
          parameter to select correct axis.
      x : scalar or array_like
          Of length M.
      der : int or list, optional
          Derivatives to extract.  The 0-th derivative can be included to
          return the function value.
      axis : int, optional
          Axis in the yi array corresponding to the x-coordinate values.
  
      See Also
      --------
      PchipInterpolator
  
      Returns
      -------
      y : scalar or array_like
          The result, of length R or length M or M by R,
  
      """
      P = PchipInterpolator(xi, yi, axis=axis)
  
      if der == 0:
          return P(x)
      elif _isscalar(der):
          return P.derivative(der)(x)
      else:
          return [P.derivative(nu)(x) for nu in der]
  
imports: from __future__ import division, print_function, absolute_import
  import numpy
  from scipy._lib.six import string_types
  from .None import BPoly, PPoly
  from .polyint import _isscalar
  from scipy._lib._util import _asarray_validated
  from scipy.linalg import solve_banded, solve
label_desc: Use image node_id 1 for calling a global function with example usage: pchip_interpolate(xi, yi, x, der, axis) and returns: P, P, unknown