class_docstr: Creates PlotsManager object
  
  This class should be only created by arena instance to manage its plots.
  
  Parameters
  ----------
  arena : dalex.Arena
      Instance of Arena.
  
  Attributes
  --------
  arena : Arena
      Instance of dalex.Arena
  cache : list of PlotContainer objects
      List of already calculated plots
  mutex : _thread.lock
      Mutex for params, plots and resources cache. Should be common with mutex from Arena instance.
  plots : list of classes extending PlotContainer
      List of available plot classes
docstr: Function searches for cached plot
  
  Parameters
  -----------
  plot_type : str
      Value of plot_type field, that requested plot must have
  params : dict
      Keys of this dict are params types (model, observation, variable, dataset)
      and values are corresponding params labels. Requested plot must have equal
      params field.
  
  Returns
  --------
  PlotContainer or None
code: def find_in_cache(self, plot_type, params):
      """Function searches for cached plot
  
      Parameters
      -----------
      plot_type : str
          Value of plot_type field, that requested plot must have
      params : dict
          Keys of this dict are params types (model, observation, variable, dataset)
          and values are corresponding params labels. Requested plot must have equal
          params field.
  
      Returns
      --------
      PlotContainer or None
      """
  
      def _filter(p):
          return p.plot_type == plot_type and params == p.params
  
      with self.mutex:
          return next(filter(_filter, self.cache), None)
  
file_path: DALEX/python/dalex/dalex/arena/_plots_manager.py
imports: import time
  from .None import plots
  from tqdm import tqdm
  from ._plot_container import PlotContainer
label_desc: Use image node_id 4 for calling the PlotsManager obj's underlying member method code with example usage: obj.find_in_cache(plot_type, params) and returns: unknown, next