class_docstr: A class to create linked axes for plotting stacked
  cuts of 3D maps.
  
  Attributes
  ----------
  
  axes: dictionary of axes
      The axes used to plot each view.
  frame_axes: axes
      The axes framing the whole set of views.
  
  Notes
  -----
  
  The extent of the different axes are adjusted to fit the data
  best in the viewing area.
class_docstr_tok: ["A","class","to","create","linked","axes","for","plotting","stacked","cuts","of","3D","maps",".","Attributes","--","--","--","--","--","axes",":","dictionary","of","axes","The","axes","used","to","plot","each","view",".","frame_axes",":","axes","The","axes","framing","the","whole","set","of","views",".","Notes","--","--","-","The","extent","of","the","different","axes","are","adjusted","to","fit","the","data","best","in","the","viewing","area","."]
code: def find_cut_coords(
      cls, data=None, affine=None, threshold=None, cut_coords=None
  ):
      if cut_coords is None:
          if data is None or data is False:
              bounds = ((-40, 40), (-30, 30), (-30, 75))
          else:
              if hasattr(data, "mask"):
                  mask = np.logical_not(data.mask)
              else:
                  # The mask will be anything that is fairly different
                  # from the values in the corners
                  edge_value = float(
                      data[0, 0, 0]
                      + data[0, -1, 0]
                      + data[-1, 0, 0]
                      + data[0, 0, -1]
                      + data[-1, -1, 0]
                      + data[-1, 0, -1]
                      + data[0, -1, -1]
                      + data[-1, -1, -1]
                  )
                  edge_value /= 6
                  mask = np.abs(data - edge_value) > 0.005 * data.ptp()
              xmin, xmax, ymin, ymax, zmin, zmax = get_mask_bounds(
                  mask, affine
              )
              bounds = (xmin, xmax), (ymin, ymax), (zmin, zmax)
          lower, upper = bounds["xyz".index(cls._direction)]
          cut_coords = np.linspace(lower, upper, 10).tolist()
      return cut_coords
  
imports: import matplotlib
  import matplotlib.pyplot
  import numpy
  from matplotlib import transforms
  from nipy.utils import is_iterable
  from ..datasets import VolumeImg
  from .None import cm
  from .coord_tools import coord_transform, find_cut_coords, get_bounds, get_mask_bounds
  from .edge_detect import _edge_map
label_desc: Use image node_id 1 for calling the BaseStackedSlicer obj's underlying member method code with example usage: obj.find_cut_coords(cls, data, affine, threshold, cut_coords) and returns: cut_coords