class_docstr: The main purpose of these class is to have auto adjust of axes size
  to the data with different layout of cuts.
class_docstr_tok: ["The","main","purpose","of","these","class","is","to","have","auto","adjust","of","axes","size","to","the","data","with","different","layout","of","cuts","."]
code: def _map_show(self, map, affine, type="imshow", **kwargs):
      map, affine = _xyz_order(map, affine)
  
      data_bounds = get_bounds(map.shape, affine)
      (xmin, xmax), (ymin, ymax), (zmin, zmax) = data_bounds
  
      xmin_, xmax_, ymin_, ymax_, zmin_, zmax_ = (
          xmin,
          xmax,
          ymin,
          ymax,
          zmin,
          zmax,
      )
      if hasattr(map, "mask"):
          not_mask = np.logical_not(map.mask)
          xmin_, xmax_, ymin_, ymax_, zmin_, zmax_ = get_mask_bounds(
              not_mask, affine
          )
          if kwargs.get("vmin") is None and kwargs.get("vmax") is None:
              # Avoid dealing with masked arrays: they are slow
              if not np.any(not_mask):
                  # Everything is masked
                  vmin = vmax = 0
              else:
                  masked_map = np.asarray(map)[not_mask]
                  vmin = masked_map.min()
                  vmax = masked_map.max()
              if kwargs.get("vmin") is None:
                  kwargs["vmin"] = vmin
              if kwargs.get("max") is None:
                  kwargs["vmax"] = vmax
      else:
          if "vmin" not in kwargs:
              kwargs["vmin"] = map.min()
          if "vmax" not in kwargs:
              kwargs["vmax"] = map.max()
  
      bounding_box = (xmin_, xmax_), (ymin_, ymax_), (zmin_, zmax_)
  
      # For each ax, cut the data and plot it
      for cut_ax in self.axes.values():
          try:
              cut = cut_ax.do_cut(map, affine)
          except IndexError:
              # We are cutting outside the indices of the data
              continue
          cut_ax.draw_cut(
              cut, data_bounds, bounding_box, type=type, **kwargs
          )
  
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 7 for calling the BaseSlicer obj's underlying member method code with example usage: obj._map_show(map, affine, type) without return types