code: def test_FeatureInteractionVisualization__prepare_chart_args__single_var(
      x, x_type, y, y_type, hue, expected_is_single, restrict_to_col
  ):
      df = pd.DataFrame(
          {
              "aa": [1, 2, 3],
              "bb": [0.1, 0.2, 0.1],
          }
      )
  
      viz = FeatureInteractionVisualization(key="abc", some_kwarg=123)
      chart_args, data, is_single_var = viz._prepare_chart_args(
          df, x=x, x_type=x_type, y=y, y_type=y_type, hue=hue
      )
  
      assert is_single_var is expected_is_single
      assert chart_args["some_kwarg"] == 123
      if restrict_to_col is None:
          assert data.equals(df)
          for var, col, val in [
              (x, "x", "aa"),
              (y, "y", "bb"),
              (hue, "hue", "cc"),
          ]:
              if var is not None:
                  assert chart_args[col] == val
              else:
                  assert col not in chart_args
      else:
          assert data.equals(df[restrict_to_col])
  
imports: from unittest.mock import ANY, MagicMock
  import matplotlib.pyplot
  import numpy
  import pandas
  import pytest
  import scipy
  import seaborn
  from hamcrest.library.integration import match_equality
  from pandas import DataFrame
  from sklearn.inspection import PartialDependenceDisplay
  import autogluon.eda.auto
  from autogluon.common.features.types import R_BOOL, R_CATEGORY, R_FLOAT, R_INT, R_OBJECT
  from autogluon.eda import AnalysisState
  from autogluon.eda.visualization import CorrelationSignificanceVisualization, CorrelationVisualization, FeatureInteractionVisualization, PDPInteractions
  from autogluon.eda.visualization.interaction import FeatureDistanceAnalysisVisualization
label_desc: Use image node_id 15 for calling a global function with example usage: test_FeatureInteractionVisualization__prepare_chart_args__single_var(x, x_type, y, y_type, hue, expected_is_single, restrict_to_col) without return types