code: def missing_heatmap(
      corr_mat: Any,
      mask: Any,
      figsize: Tuple[float, float] = (20, 12),
      fontsize: float = 16,
      labels: bool = True,
      label_rotation: int = 45,
      cmap: str = "RdBu",
      normalized_cmap: bool = True,
      cbar: bool = True,
      ax: matplotlib.axis.Axis = None,
  ) -> matplotlib.axis.Axis:
      """
      Presents a `seaborn` heatmap visualization of missing data correlation.
      Note that this visualization has no special support for large datasets.
  
      Inspired by https://github.com/ResidentMario/missingno
  
      Args:
          corr_mat: correlation matrix.
          mask: Upper-triangle mask.
          figsize: The size of the figure to display. Defaults to (20, 12).
          fontsize: The figure's font size.
          labels: Whether or not to label each matrix entry with its correlation (default is True).
          label_rotation: What angle to rotate the text labels to. Defaults to 45 degrees.
          cmap: Which colormap to use. Defaults to `RdBu`.
          normalized_cmap: Use a normalized colormap threshold or not. Defaults to True
      Returns:
          The plot axis.
      """
      _, ax = plt.subplots(1, 1, figsize=figsize)
      norm_args = {"vmin": -1, "vmax": 1} if normalized_cmap else {}
  
      if labels:
          sns.heatmap(
              corr_mat,
              mask=mask,
              cmap=cmap,
              ax=ax,
              cbar=cbar,
              annot=True,
              annot_kws={"size": fontsize - 2},
              **norm_args,
          )
      else:
          sns.heatmap(
              corr_mat,
              mask=mask,
              cmap=cmap,
              ax=ax,
              cbar=cbar,
              **norm_args,
          )
  
      # Apply visual corrections and modifications.
      ax.xaxis.tick_bottom()
      ax.set_xticklabels(
          ax.xaxis.get_majorticklabels(),
          rotation=label_rotation,
          ha="right",
          fontsize=fontsize,
      )
      ax.set_yticklabels(
          ax.yaxis.get_majorticklabels(), rotation=0, fontsize=fontsize
      )
      ax = _set_visibility(ax)
      ax.patch.set_visible(False)
  
      for text in ax.texts:
          t = float(text.get_text())
          if 0.95 <= t < 1:
              text.set_text("<1")
          elif -1 < t <= -0.95:
              text.set_text(">-1")
          elif t == 1:
              text.set_text("1")
          elif t == -1:
              text.set_text("-1")
          elif -0.05 < t < 0.05:
              text.set_text("")
          else:
              text.set_text(round(t, 1))
  
      return ax
  
imports: import copy
  from typing import Any, Callable, List, Optional, Tuple, Union
  import matplotlib
  import numpy
  import pandas
  import seaborn
  from matplotlib import pyplot
  from matplotlib.collections import PolyCollection
  from matplotlib.colors import Colormap, LinearSegmentedColormap, ListedColormap, rgb2hex
  from matplotlib.dates import AutoDateLocator, ConciseDateFormatter
  from matplotlib.patches import Patch
  from matplotlib.ticker import FuncFormatter, MaxNLocator
  from statsmodels.graphics.tsaplots import plot_acf, plot_pacf
  from typeguard import typechecked
  from wordcloud import WordCloud
  from ydata_profiling.config import Settings
  from ydata_profiling.utils.common import convert_timestamp_to_datetime
  from ydata_profiling.visualisation.context import manage_matplotlib_context
  from ydata_profiling.visualisation.utils import plot_360_n0sc0pe
label_desc: Use image node_id 32 for calling a global function with example usage: missing_heatmap(corr_mat, mask, figsize, fontsize, labels, label_rotation, cmap, normalized_cmap, cbar, ax) and returns: ax