class_docstr: Object that can be rendered by HiPlot. It essential contains a list of metrics, but also some options on how to render it.
  
  See :meth:`Experiment.display` to display an :class:`Experiment` in an ipython notebook.
  
  :ivar datapoints: All the measurements we have. One datapoint corresponds to one line in the parallel plot and to one line in the table.
  :ivar parameters_definition: Characteristics of the columns (ordering, type, etc...)
  :ivar colormap: Colormap to use
  :ivar colorby: Default column to color by
  :ivar weightcolumn: If rows have different weights, use this column as the weight (default to 1 if not specified)
  :ivar enabledDisplays: Ordered displays to enable (by default all are enabled)
  
  :Example:
  
  .. code-block:: python
  
      import hiplot as hip
      data = [{'param': 1, 'loss': 10, 'hidden_field': 'value1', 'c': 'red'},
          {'param': 2, 'loss': 5, 'hidden_field': 'value2', 'c': 'black'}]
      exp = hip.Experiment.from_iterable(data)
docstr: Displays an experiment in a Streamlit app - see :ref:`tutoStreamlit`
  
  This function can be pretty slow, see :ref:`tutoStreamlitCache` to learn how to make it faster.
  
  :param key: Unique key for the streamlit component. It is strongly recommended to give some unique string.
  :param ret: Specify what HiPlot should return.
  :returns: Return value depends on ``ret``
  
  :Example:
  
  .. code-block:: python
  
      exp.display_st(key="hiplot1")
      brush_extents = exp.display_st(key="hiplot2", ret="brush_extents")
      brush_extents, selected_uids = exp.display_st(key="hiplot3", ret=["brush_extents", "selected_uids"])
docstr_tok: ["Displays","an","experiment","in","a","Streamlit","app","-","see",":","ref",":","`","tutoStreamlit","`","This","function","can","be","pretty","slow",",","see",":","ref",":","`","tutoStreamlitCache","`","to","learn","how","to","make","it","faster",".",":","param","key",":","Unique","key","for","the","streamlit","component",".","It","is","strongly","recommended","to","give","some","unique","string",".",":","param","ret",":","Specify","what","HiPlot","should","return",".",":","returns",":","Return","value","depends","on","``","ret","``",":","Example",":","..","code-block",":",":","python","exp.display_st","(","key=","''","hiplot1","''",")","brush_extents","=","exp.display_st","(","key=","''","hiplot2","''",",","ret=","''","brush_extents","''",")","brush_extents",",","selected_uids","=","exp.display_st","(","key=","''","hiplot3","''",",","ret=","[","``","brush_extents","''",",","``","selected_uids","''","]",")"]
code: def display_st(
      self,
      *,
      ret: tp.Union[str, tp.List[str], None] = None,
      key: tp.Optional[str] = None,
  ) -> tp.Any:
      """
      Displays an experiment in a Streamlit app - see :ref:`tutoStreamlit`
  
      This function can be pretty slow, see :ref:`tutoStreamlitCache` to learn how to make it faster.
  
      :param key: Unique key for the streamlit component. It is strongly recommended to give some unique string.
      :param ret: Specify what HiPlot should return.
      :returns: Return value depends on ``ret``
  
      :Example:
  
      .. code-block:: python
  
          exp.display_st(key="hiplot1")
          brush_extents = exp.display_st(key="hiplot2", ret="brush_extents")
          brush_extents, selected_uids = exp.display_st(key="hiplot3", ret=["brush_extents", "selected_uids"])
  
      """
      return self.to_streamlit(ret=ret, key=key).display()
  
imports: import csv
  import uuid
  import json
  import codecs
  import warnings
  from abc import ABCMeta, abstractmethod
  from enum import Enum
  from collections import defaultdict
  from pathlib import Path
  import typing
label_desc: Use image node_id 7 for calling the Experiment obj's underlying member method code with example usage: obj.display_st() and returns: self