class_docstr: Smooth bivariate spline approximation.
  
  Parameters
  ----------
  x, y, z : array_like
      1-D sequences of data points (order is not important).
  w : array_like, optional
      Positive 1-D sequence of weights, of same length as `x`, `y` and `z`.
  bbox : array_like, optional
      Sequence of length 4 specifying the boundary of the rectangular
      approximation domain.  By default,
      ``bbox=[min(x), max(x), min(y), max(y)]``.
  kx, ky : ints, optional
      Degrees of the bivariate spline. Default is 3.
  s : float, optional
      Positive smoothing factor defined for estimation condition:
      ``sum((w[i]*(z[i]-s(x[i], y[i])))**2, axis=0) <= s``
      Default ``s=len(w)`` which should be a good value if ``1/w[i]`` is an
      estimate of the standard deviation of ``z[i]``.
  eps : float, optional
      A threshold for determining the effective rank of an over-determined
      linear system of equations. `eps` should have a value within the open
      interval ``(0, 1)``, the default is 1e-16.
  
  See Also
  --------
  BivariateSpline :
      a base class for bivariate splines.
  UnivariateSpline :
      a smooth univariate spline to fit a given set of data points.
  LSQBivariateSpline :
      a bivariate spline using weighted least-squares fitting
  RectSphereBivariateSpline :
      a bivariate spline over a rectangular mesh on a sphere
  SmoothSphereBivariateSpline :
      a smoothing bivariate spline in spherical coordinates
  LSQSphereBivariateSpline :
      a bivariate spline in spherical coordinates using weighted
      least-squares fitting
  RectBivariateSpline :
      a bivariate spline over a rectangular mesh
  bisplrep :
      a function to find a bivariate B-spline representation of a surface
  bisplev :
      a function to evaluate a bivariate B-spline and its derivatives
  
  Notes
  -----
  The length of `x`, `y` and `z` should be at least ``(kx+1) * (ky+1)``.
class_docstr_tok: ["Smooth","bivariate","spline","approximation",".","Parameters","--","--","--","--","--","x",",","y",",","z",":","array_like","1-D","sequences","of","data","points","(","order","is","not","important",")",".","w",":","array_like",",","optional","Positive","1-D","sequence","of","weights",",","of","same","length","as","`","x","`",",","`","y","`","and","`","z","`",".","bbox",":","array_like",",","optional","Sequence","of","length","4","specifying","the","boundary","of","the","rectangular","approximation","domain",".","By","default",",","``","bbox=","[","min","(","x",")",",","max","(","x",")",",","min","(","y",")",",","max","(","y",")","]","``",".","kx",",","ky",":","ints",",","optional","Degrees","of","the","bivariate","spline",".","Default","is","3.","s",":","float",",","optional","Positive","smoothing","factor","defined","for","estimation","condition",":","``","sum","(","(","w","[","i","]","*","(","z","[","i","]","-s","(","x","[","i","]",",","y","[","i","]",")",")",")","*","*","2",",","axis=0",")","<","=","s","``","Default","``","s=len","(","w",")","``","which","should","be","a","good","value","if","``","1\/w","[","i","]","``","is","an","estimate","of","the","standard","deviation","of","``","z","[","i","]","``",".","eps",":","float",",","optional","A","threshold","for","determining","the","effective","rank","of","an","over-determined","linear","system","of","equations",".","`","eps","`","should","have","a","value","within","the","open","interval","``","(","0",",","1",")","``",",","the","default","is","1e-16",".","See","Also","--","--","--","--","BivariateSpline",":","a","base","class","for","bivariate","splines",".","UnivariateSpline",":","a","smooth","univariate","spline","to","fit","a","given","set","of","data","points",".","LSQBivariateSpline",":","a","bivariate","spline","using","weighted","least-squares","fitting","RectSphereBivariateSpline",":","a","bivariate","spline","over","a","rectangular","mesh","on","a","sphere","SmoothSphereBivariateSpline",":","a","smoothing","bivariate","spline","in","spherical","coordinates","LSQSphereBivariateSpline",":","a","bivariate","spline","in","spherical","coordinates","using","weighted","least-squares","fitting","RectBivariateSpline",":","a","bivariate","spline","over","a","rectangular","mesh","bisplrep",":","a","function","to","find","a","bivariate","B-spline","representation","of","a","surface","bisplev",":","a","function","to","evaluate","a","bivariate","B-spline","and","its","derivatives","Notes","--","--","-","The","length","of","`","x","`",",","`","y","`","and","`","z","`","should","be","at","least","``","(","kx+1",")","*","(","ky+1",")","``","."]
code: def __init__(
      self,
      x,
      y,
      z,
      w=None,
      bbox=[None] * 4,
      kx=3,
      ky=3,
      s=None,
      eps=1e-16,
  ):
      x, y, z, w = self._validate_input(x, y, z, w, kx, ky, eps)
      bbox = ravel(bbox)
      if not bbox.shape == (4,):
          raise ValueError("bbox shape should be (4,)")
      if s is not None and not s >= 0.0:
          raise ValueError("s should be s >= 0.0")
  
      xb, xe, yb, ye = bbox
      nx, tx, ny, ty, c, fp, wrk1, ier = dfitpack.surfit_smth(
          x, y, z, w, xb, xe, yb, ye, kx, ky, s=s, eps=eps, lwrk2=1
      )
      if ier > 10:  # lwrk2 was to small, re-run
          nx, tx, ny, ty, c, fp, wrk1, ier = dfitpack.surfit_smth(
              x,
              y,
              z,
              w,
              xb,
              xe,
              yb,
              ye,
              kx,
              ky,
              s=s,
              eps=eps,
              lwrk2=ier,
          )
      if ier in [0, -1, -2]:  # normal return
          pass
      else:
          message = _surfit_messages.get(ier, "ier=%s" % (ier))
          warnings.warn(message)
  
      self.fp = fp
      self.tck = tx[:nx], ty[:ny], c[: (nx - kx - 1) * (ny - ky - 1)]
      self.degrees = kx, ky
  
imports: import warnings
  from numpy import zeros, concatenate, ravel, diff, array, ones
  import numpy
  from .None import fitpack
  from .None import dfitpack
label_desc: Use image node_id 1 to create a new SmoothBivariateSpline object from inherited base classes: BivariateSpline with example: obj = SmoothBivariateSpline(x, y, z, w, bbox, kx, ky, s, eps)