class_docstr: Heatmap plot.
code: def _create_figure(self) -> go.Figure:
      df = self.data
      colorbar_position = self.COLORBAR_POSITION[self.colorbar_position]
      fig = go.Figure(
          go.Heatmap(
              z=df.values.tolist(),
              zmid=(self.colorbar_limit[0] + self.colorbar_limit[1])
              / 2,
              zmin=self.colorbar_limit[0],
              zmax=self.colorbar_limit[1],
              x=df.columns.tolist(),
              y=df.index.tolist(),
              meta={"label_xaxis": "Category", "label_yaxis": "Group"},
              colorscale=self.cmap,
              colorbar={
                  "tickmode": "array",
                  "tickformat": self.fmt_colorbar,
                  **colorbar_position,  # type: ignore
              },
              showscale=self.colorbar,
              hovertemplate=self.hovertemplate,
          )
      )
      self._annotations = []
      if self.show_labels:
          self._annotate()
      return fig
  
file_path: tslumen/tslumen/plot/interactive/comparison.py
imports: from typing import Optional, Any, List, Union, Tuple
  import pandas
  from tslumen.plot.interactive.base import VizBase, go
  from tslumen.plot.utils import cmapper, ccontrast
label_desc: Use image node_id 3 for calling the Heatmap obj's underlying member method code with example usage: obj._create_figure() and returns: fig