code: def correlation_matrix(
      data,
      cluster=False,
      categorical=False,
      compute_backend=None,
      viz_backend=None,
      **kwargs,
  ) -> CorrelationWidget:
      """Computes correlations (associations) and visualizes as a heatmap.
  
      This feature combines measures of association for pairs of variables:
          * Numeric-numeric pairs: Pearson correlation
          * Categorical-numeric pairs: Correlation ratio
          * Categorical-categorical pairs
              * More than 2 levels: Cramer's V
              * Only 2 levels for both variables: Point-biserial coefficient
  
      Args:
          data (DataFrame): A data frame
          cluster (bool): If True, use clustering to reorder similar columns together
          categorical (bool): If True, include categorical associations using Cramer's
              V, Correlation Ratio, and Point-biserial coefficient (a.k.a. Matthews
              correlation coefficient). All associations (including Pearson correlation)
              are scaled to be in the range [0, 1].
          compute_backend: The compute backend.
          viz_backend: The visualization backend.
          **kwargs: Keyword arguments.
  
      Raises:
          ValueError: Invalid data input type.
  
      Returns:
          CorrelationWidget
      """
      if not _is_dataframe(data):
          raise ValueError("Data frame required")
  
      corrwidget = _get_compute_backend(
          compute_backend, data
      ).compute_correlation_matrix(
          data, cluster=cluster, categorical=categorical, **kwargs
      )
  
      corrwidget.viz_backend = viz_backend
  
      return corrwidget
  
imports: import warnings
  import pandas
  import numpy
  from scipy.cluster import hierarchy
  from sklearn.metrics import matthews_corrcoef
  from scipy.stats import chi2_contingency
  import seaborn
  import matplotlib.pyplot
  import plotly.graph_objs
  import plotly.offline
  from data_describe.config._config import get_option
  from data_describe.misc.colors import get_p_RdBl_cmap, mpl_to_plotly_cmap
  from data_describe._widget import BaseWidget
  from data_describe.compat import _is_dataframe, _in_notebook, _requires
  from data_describe.backends import _get_viz_backend, _get_compute_backend
label_desc: Use image node_id 1 for calling a global function with example usage: correlation_matrix(data, cluster, categorical, compute_backend, viz_backend) and returns: corrwidget