class_docstr: Sankey diagram.
  
    Sankey diagrams are a specific type of flow diagram, in which
    the width of the arrows is shown proportionally to the flow
    quantity.  They are typically used to visualize energy or
    material or cost transfers between processes.
    `Wikipedia (6/1/2011) <https://en.wikipedia.org/wiki/Sankey_diagram>`_
docstr: Adjust the axes and return a list of information about the Sankey
  subdiagram(s).
  
  Returns a list of subdiagrams with the following fields:
  
  ========  =============================================================
  Field     Description
  ========  =============================================================
  *patch*   Sankey outline (a `~matplotlib.patches.PathPatch`).
  *flows*   Flow values (positive for input, negative for output).
  *angles*  List of angles of the arrows [deg/90].
            For example, if the diagram has not been rotated,
            an input to the top side has an angle of 3 (DOWN),
            and an output from the top side has an angle of 1 (UP).
            If a flow has been skipped (because its magnitude is less
            than *tolerance*), then its angle will be *None*.
  *tips*    (N, 2)-array of the (x, y) positions of the tips (or "dips")
            of the flow paths.
            If the magnitude of a flow is less the *tolerance* of this
            `Sankey` instance, the flow is skipped and its tip will be at
            the center of the diagram.
  *text*    `.Text` instance for the diagram label.
  *texts*   List of `.Text` instances for the flow labels.
  ========  =============================================================
  
  See Also
  --------
  Sankey.add
docstr_tok: ["Adjust","the","axes","and","return","a","list","of","information","about","the","Sankey","subdiagram","(","s",")",".","Returns","a","list","of","subdiagrams","with","the","following","fields",":","========","=============================================================","Field","Description","========","=============================================================","*","patch","*","Sankey","outline","(","a","`","~matplotlib.patches.PathPatch","`",")",".","*","flows","*","Flow","values","(","positive","for","input",",","negative","for","output",")",".","*","angles","*","List","of","angles","of","the","arrows","[","deg\/90","]",".","For","example",",","if","the","diagram","has","not","been","rotated",",","an","input","to","the","top","side","has","an","angle","of","3","(","DOWN",")",",","and","an","output","from","the","top","side","has","an","angle","of","1","(","UP",")",".","If","a","flow","has","been","skipped","(","because","its","magnitude","is","less","than","*","tolerance","*",")",",","then","its","angle","will","be","*","None","*",".","*","tips","*","(","N",",","2",")","-array","of","the","(","x",",","y",")","positions","of","the","tips","(","or","``","dips","''",")","of","the","flow","paths",".","If","the","magnitude","of","a","flow","is","less","the","*","tolerance","*","of","this","`","Sankey","`","instance",",","the","flow","is","skipped","and","its","tip","will","be","at","the","center","of","the","diagram",".","*","text","*","`",".Text","`","instance","for","the","diagram","label",".","*","texts","*","List","of","`",".Text","`","instances","for","the","flow","labels",".","========","=============================================================","See","Also","--","--","--","--","Sankey.add"]
code: def finish(self):
      """
      Adjust the axes and return a list of information about the Sankey
      subdiagram(s).
  
      Returns a list of subdiagrams with the following fields:
  
      ========  =============================================================
      Field     Description
      ========  =============================================================
      *patch*   Sankey outline (a `~matplotlib.patches.PathPatch`).
      *flows*   Flow values (positive for input, negative for output).
      *angles*  List of angles of the arrows [deg/90].
                For example, if the diagram has not been rotated,
                an input to the top side has an angle of 3 (DOWN),
                and an output from the top side has an angle of 1 (UP).
                If a flow has been skipped (because its magnitude is less
                than *tolerance*), then its angle will be *None*.
      *tips*    (N, 2)-array of the (x, y) positions of the tips (or "dips")
                of the flow paths.
                If the magnitude of a flow is less the *tolerance* of this
                `Sankey` instance, the flow is skipped and its tip will be at
                the center of the diagram.
      *text*    `.Text` instance for the diagram label.
      *texts*   List of `.Text` instances for the flow labels.
      ========  =============================================================
  
      See Also
      --------
      Sankey.add
      """
      self.ax.axis(
          [
              self.extent[0] - self.margin,
              self.extent[1] + self.margin,
              self.extent[2] - self.margin,
              self.extent[3] + self.margin,
          ]
      )
      self.ax.set_aspect("equal", adjustable="datalim")
      return self.diagrams
  
file_path: catboost/contrib/python/matplotlib/py3/matplotlib/sankey.py
imports: import logging
  from types import SimpleNamespace
  import numpy
  import matplotlib
  from matplotlib.path import Path
  from matplotlib.patches import PathPatch
  from matplotlib.transforms import Affine2D
  from matplotlib import _docstring
label_desc: Use image node_id 7 for calling the Sankey obj's underlying member method code with example usage: obj.finish() and returns: self