code: def display(self, workspace, figure):
      header = workspace.display_data.header
  
      stats = workspace.display_data.stats
  
      n_plots = len(workspace.display_data.heatmaps) + 1
  
      n_vert = int(numpy.sqrt(n_plots))
  
      n_horiz = int(numpy.ceil(float(n_plots) / n_vert))
  
      if len(self.heatmaps) > 0:
          helptext = "short"
      else:
          helptext = "default"
  
      figure.set_subplots((n_horiz, n_vert))
  
      figure.subplot_table(
          0, 0, stats, col_labels=header, title=helptext
      )
  
      idx = 1
  
      sharexy = None
  
      for heatmap, (heatmap_img, mask) in zip(
          self.heatmaps, workspace.display_data.heatmaps
      ):
          heatmap_img = numpy.ma.array(heatmap_img, mask=~mask)
  
          if heatmap_img is not None:
              title = "{} {} {}".format(
                  heatmap.image_name.get_image_name(),
                  heatmap.object_name.get_objects_name(),
                  heatmap.measurement.value,
              )
  
              x = idx % n_horiz
  
              y = int(idx / n_horiz)
  
              colormap = heatmap.colormap.value
  
              if colormap == "Default":
                  colormap = get_default_colormap()
  
              if sharexy is None:
                  sharexy = figure.subplot_imshow(
                      x,
                      y,
                      heatmap_img,
                      title=title,
                      colormap=colormap,
                      normalize=False,
                      vmin=numpy.min(heatmap_img),
                      vmax=numpy.max(heatmap_img),
                      colorbar=False,
                  )
              else:
                  figure.subplot_imshow(
                      x,
                      y,
                      heatmap_img,
                      title=title,
                      colormap=colormap,
                      colorbar=False,
                      normalize=False,
                      vmin=numpy.min(heatmap_img),
                      vmax=numpy.max(heatmap_img),
                      sharexy=sharexy,
                  )
  
              idx += 1
  
imports: import centrosome.cpmorphology
  import centrosome.propagate
  import centrosome.zernike
  import matplotlib.cm
  import numpy
  import numpy.ma
  import scipy.ndimage
  import scipy.sparse
  from cellprofiler_core.constants.measurement import COLTYPE_FLOAT
  from cellprofiler_core.image import Image
  from cellprofiler_core.module import Module
  from cellprofiler_core.preferences import get_default_colormap
  from cellprofiler_core.setting import HiddenCount, Divider, SettingsGroup, Binary, ValidationError
  from cellprofiler_core.setting.choice import Choice, Colormap
  from cellprofiler_core.setting.do_something import DoSomething, RemoveSettingButton
  from cellprofiler_core.setting.subscriber import LabelSubscriber, ImageListSubscriber, ImageSubscriber
  from cellprofiler_core.setting.text import Integer, ImageName
  from cellprofiler_core.utilities.core.object import crop_labels_and_image, size_similarly
  import cellprofiler.gui.help.content
label_desc: Use image node_id 11 for calling the MeasureObjectIntensityDistribution obj's underlying member method code with example usage: obj.display(workspace, figure) without return types