class_docstr: Base class for visualization functionality.
  
  Provides basic functionality for namespace management and helper method to access frequently-used methods.
  
  Specifying namespace would narrow visibility scope to specific subspace of `state`. Namespaces
  can be specified in a nested form: `ns_a.ns_b.ns_c`. Please see :py:class:`~autogluon.eda.analysis.base.Namespace`
  wrapper on how to create namespaces.
  
  The main entry method of analysis is `render` function. When called, the execution flow is the following:
  - narrow `state` scope to specified `namespace`
  - call `_render` function for each component that returned `True` from `can_handle` call
  
  Parameters
  ----------
  namespace: str
      namespace to use; can be nested like `ns_a.ns_b.ns_c`
  kwargs
  
  See Also
  --------
  :py:class:`~autogluon.eda.analysis.base.Namespace`
docstr: Checks if state has all the required parameters for visualization.
  See also :func:`at_least_one_key_must_be_present` and :func:`all_keys_must_be_present` helpers
  to construct more complex logic.
  
  Parameters
  ----------
  state: AnalysisState
      fitted state
  
  Returns
  -------
      `True` if all the pre-requisites for rendering are present
code: def can_handle(self, state: AnalysisState) -> bool:
      """
      Checks if state has all the required parameters for visualization.
      See also :func:`at_least_one_key_must_be_present` and :func:`all_keys_must_be_present` helpers
      to construct more complex logic.
  
      Parameters
      ----------
      state: AnalysisState
          fitted state
  
      Returns
      -------
          `True` if all the pre-requisites for rendering are present
  
      """
      raise NotImplementedError
  
file_path: autogluon/eda/src/autogluon/eda/visualization/base.py
imports: import logging
  from abc import ABC, abstractmethod
  from typing import List, Optional
  from ..state import AnalysisState, StateCheckMixin
label_desc: Use image node_id 3 for calling the AbstractVisualization obj's underlying member method code with example usage: obj.can_handle(state) without return types