docstr: produce a scatterplot of (x,z) and the surface z = function(*x.T)
  
  Input:
    step: int, plot every 'step' points on the grid [default: 200]
    scale: float, scaling factor for the z-axis [default: False]
    shift: float, additive shift for the z-axis [default: False]
    density: int, density of wireframe for the plot surface [default: 9]
    axes: tuple, indicies of the axes to plot [default: ()]
    vals: list of values (one per axis) for unplotted axes [default: ()]
    maxpts: int, maximum number of (x,z) points to use [default: None]
    kernel: function transforming x to x', where x' = kernel(x)
    vtol: float, maximum distance outside bounds hypercube to plot data
docstr_tok: ["produce","a","scatterplot","of","(","x",",","z",")","and","the","surface","z","=","function","(","*","x.T",")","Input",":","step",":","int",",","plot","every","'step","'","points","on","the","grid","[","default",":","200","]","scale",":","float",",","scaling","factor","for","the","z-axis","[","default",":","False","]","shift",":","float",",","additive","shift","for","the","z-axis","[","default",":","False","]","density",":","int",",","density","of","wireframe","for","the","plot","surface","[","default",":","9","]","axes",":","tuple",",","indicies","of","the","axes","to","plot","[","default",":","(",")","]","vals",":","list","of","values","(","one","per","axis",")","for","unplotted","axes","[","default",":","(",")","]","maxpts",":","int",",","maximum","number","of","(","x",",","z",")","points","to","use","[","default",":","None","]","kernel",":","function","transforming","x","to","x","'",",","where","x","'","=","kernel","(","x",")","vtol",":","float",",","maximum","distance","outside","bounds","hypercube","to","plot","data"]
code: def Plot(self, **kwds):
      """produce a scatterplot of (x,z) and the surface z = function(*x.T)
  
      Input:
        step: int, plot every 'step' points on the grid [default: 200]
        scale: float, scaling factor for the z-axis [default: False]
        shift: float, additive shift for the z-axis [default: False]
        density: int, density of wireframe for the plot surface [default: 9]
        axes: tuple, indicies of the axes to plot [default: ()]
        vals: list of values (one per axis) for unplotted axes [default: ()]
        maxpts: int, maximum number of (x,z) points to use [default: None]
        kernel: function transforming x to x', where x' = kernel(x)
        vtol: float, maximum distance outside bounds hypercube to plot data
      """
      # get interpolted function
      fx = self.surrogate
      # plot interpolated surface
      from plotter import Plotter
  
      p = Plotter(self.x, self.z, fx, **kwds)
      p.Plot()
      # if plotter interpolated the function, get the function
      self.surrogate = fx or p.function
  
file_path: mystic/examples3/surface.py
label_desc: Use image node_id 8 for calling the Surface obj's underlying member method code with example usage: obj.Plot() without return types