class_docstr: A class of the initial plot object.
  
  Do not use this class explicitly.
  
  Instead, you should construct its objects with functions `ggplot()`,
  `corr_plot(...).points().build()` etc.
class_docstr_tok: ["A","class","of","the","initial","plot","object",".","Do","not","use","this","class","explicitly",".","Instead",",","you","should","construct","its","objects","with","functions","`","ggplot","(",")","`",",","`","corr_plot","(","...",")",".points","(",")",".build","(",")","`","etc","."]
code: def __str__(self):
      result = ["plot"]
      result.extend(
          "{}: {}".format(k, v) for k, v in self.props().items()
      )
  
      result.append("scales [{}]".format(len(self.__scales)))
      for scale in self.__scales:
          result.append(str(scale))
          result.append("-" * 34)
  
      result.append("layers [{}]".format(len(self.__layers)))
      for layer in self.__layers:
          result.append(str(layer))
          result.append("-" * 34)
  
      result.append(
          "metainfo_list [{}]".format(len(self.__metainfo_list))
      )
      for metainfo in self.__metainfo_list:
          result.append(str(metainfo))
          result.append("-" * 34)
  
      result.append("")  # for trailing \n
      return "\n".join(result)
  
imports: import io
  import json
  import os
  from typing import Union
  from lets_plot._global_settings import get_global_bool, has_global_value, FRAGMENTS_ENABLED
label_desc: Use image node_id 7 for calling the PlotSpec obj's underlying member method code with example usage: obj.__str__() and returns: str