aboutsummaryrefslogtreecommitdiff
path: root/venv/lib/python3.8/site-packages/plotly/graph_objs/sankey
diff options
context:
space:
mode:
Diffstat (limited to 'venv/lib/python3.8/site-packages/plotly/graph_objs/sankey')
-rw-r--r--venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/__init__.py31
-rw-r--r--venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/_domain.py169
-rw-r--r--venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/_hoverlabel.py338
-rw-r--r--venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/_legendgrouptitle.py104
-rw-r--r--venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/_link.py784
-rw-r--r--venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/_node.py682
-rw-r--r--venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/_stream.py113
-rw-r--r--venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/_textfont.py334
-rw-r--r--venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/hoverlabel/__init__.py9
-rw-r--r--venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/hoverlabel/_font.py587
-rw-r--r--venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/legendgrouptitle/__init__.py9
-rw-r--r--venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/legendgrouptitle/_font.py334
-rw-r--r--venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/link/__init__.py16
-rw-r--r--venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/link/_colorscale.py304
-rw-r--r--venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/link/_hoverlabel.py338
-rw-r--r--venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/link/_line.py160
-rw-r--r--venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/link/hoverlabel/__init__.py9
-rw-r--r--venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/link/hoverlabel/_font.py587
-rw-r--r--venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/node/__init__.py13
-rw-r--r--venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/node/_hoverlabel.py338
-rw-r--r--venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/node/_line.py160
-rw-r--r--venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/node/hoverlabel/__init__.py9
-rw-r--r--venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/node/hoverlabel/_font.py587
23 files changed, 6015 insertions, 0 deletions
diff --git a/venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/__init__.py b/venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/__init__.py
new file mode 100644
index 0000000..257626f
--- /dev/null
+++ b/venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/__init__.py
@@ -0,0 +1,31 @@
+import sys
+from typing import TYPE_CHECKING
+
+if TYPE_CHECKING:
+ from ._domain import Domain
+ from ._hoverlabel import Hoverlabel
+ from ._legendgrouptitle import Legendgrouptitle
+ from ._link import Link
+ from ._node import Node
+ from ._stream import Stream
+ from ._textfont import Textfont
+ from . import hoverlabel
+ from . import legendgrouptitle
+ from . import link
+ from . import node
+else:
+ from _plotly_utils.importers import relative_import
+
+ __all__, __getattr__, __dir__ = relative_import(
+ __name__,
+ [".hoverlabel", ".legendgrouptitle", ".link", ".node"],
+ [
+ "._domain.Domain",
+ "._hoverlabel.Hoverlabel",
+ "._legendgrouptitle.Legendgrouptitle",
+ "._link.Link",
+ "._node.Node",
+ "._stream.Stream",
+ "._textfont.Textfont",
+ ],
+ )
diff --git a/venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/_domain.py b/venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/_domain.py
new file mode 100644
index 0000000..c86377e
--- /dev/null
+++ b/venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/_domain.py
@@ -0,0 +1,169 @@
+# --- THIS FILE IS AUTO-GENERATED ---
+# Modifications will be overwitten the next time code generation run.
+
+from plotly.basedatatypes import BaseTraceHierarchyType as _BaseTraceHierarchyType
+import copy as _copy
+
+
+class Domain(_BaseTraceHierarchyType):
+ _parent_path_str = "sankey"
+ _path_str = "sankey.domain"
+ _valid_props = {"column", "row", "x", "y"}
+
+ @property
+ def column(self):
+ """
+ If there is a layout grid, use the domain for this column in
+ the grid for this sankey trace .
+
+ The 'column' property is a integer and may be specified as:
+ - An int (or float that will be cast to an int)
+ in the interval [0, 9223372036854775807]
+
+ Returns
+ -------
+ int
+ """
+ return self["column"]
+
+ @column.setter
+ def column(self, val):
+ self["column"] = val
+
+ @property
+ def row(self):
+ """
+ If there is a layout grid, use the domain for this row in the
+ grid for this sankey trace .
+
+ The 'row' property is a integer and may be specified as:
+ - An int (or float that will be cast to an int)
+ in the interval [0, 9223372036854775807]
+
+ Returns
+ -------
+ int
+ """
+ return self["row"]
+
+ @row.setter
+ def row(self, val):
+ self["row"] = val
+
+ @property
+ def x(self):
+ """
+ Sets the horizontal domain of this sankey trace (in plot
+ fraction).
+
+ The 'x' property is an info array that may be specified as:
+
+ * a list or tuple of 2 elements where:
+ (0) The 'x[0]' property is a number and may be specified as:
+ - An int or float in the interval [0, 1]
+ (1) The 'x[1]' property is a number and may be specified as:
+ - An int or float in the interval [0, 1]
+
+ Returns
+ -------
+ list
+ """
+ return self["x"]
+
+ @x.setter
+ def x(self, val):
+ self["x"] = val
+
+ @property
+ def y(self):
+ """
+ Sets the vertical domain of this sankey trace (in plot
+ fraction).
+
+ The 'y' property is an info array that may be specified as:
+
+ * a list or tuple of 2 elements where:
+ (0) The 'y[0]' property is a number and may be specified as:
+ - An int or float in the interval [0, 1]
+ (1) The 'y[1]' property is a number and may be specified as:
+ - An int or float in the interval [0, 1]
+
+ Returns
+ -------
+ list
+ """
+ return self["y"]
+
+ @y.setter
+ def y(self, val):
+ self["y"] = val
+
+ @property
+ def _prop_descriptions(self):
+ return """\
+ column
+ If there is a layout grid, use the domain for this
+ column in the grid for this sankey trace .
+ row
+ If there is a layout grid, use the domain for this row
+ in the grid for this sankey trace .
+ x
+ Sets the horizontal domain of this sankey trace (in
+ plot fraction).
+ y
+ Sets the vertical domain of this sankey trace (in plot
+ fraction).
+ """
+
+ def __init__(self, arg=None, column=None, row=None, x=None, y=None, **kwargs):
+ """
+ Construct a new Domain object
+
+ Parameters
+ ----------
+ arg
+ dict of properties compatible with this constructor or
+ an instance of :class:`plotly.graph_objs.sankey.Domain`
+ column
+ If there is a layout grid, use the domain for this
+ column in the grid for this sankey trace .
+ row
+ If there is a layout grid, use the domain for this row
+ in the grid for this sankey trace .
+ x
+ Sets the horizontal domain of this sankey trace (in
+ plot fraction).
+ y
+ Sets the vertical domain of this sankey trace (in plot
+ fraction).
+
+ Returns
+ -------
+ Domain
+ """
+ super().__init__("domain")
+ if "_parent" in kwargs:
+ self._parent = kwargs["_parent"]
+ return
+
+ if arg is None:
+ arg = {}
+ elif isinstance(arg, self.__class__):
+ arg = arg.to_plotly_json()
+ elif isinstance(arg, dict):
+ arg = _copy.copy(arg)
+ else:
+ raise ValueError("""\
+The first argument to the plotly.graph_objs.sankey.Domain
+constructor must be a dict or
+an instance of :class:`plotly.graph_objs.sankey.Domain`""")
+
+ self._skip_invalid = kwargs.pop("skip_invalid", False)
+ self._validate = kwargs.pop("_validate", True)
+
+ self._set_property("column", arg, column)
+ self._set_property("row", arg, row)
+ self._set_property("x", arg, x)
+ self._set_property("y", arg, y)
+ self._process_kwargs(**dict(arg, **kwargs))
+ self._skip_invalid = False
diff --git a/venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/_hoverlabel.py b/venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/_hoverlabel.py
new file mode 100644
index 0000000..32d95a9
--- /dev/null
+++ b/venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/_hoverlabel.py
@@ -0,0 +1,338 @@
+# --- THIS FILE IS AUTO-GENERATED ---
+# Modifications will be overwitten the next time code generation run.
+
+from plotly.basedatatypes import BaseTraceHierarchyType as _BaseTraceHierarchyType
+import copy as _copy
+
+
+class Hoverlabel(_BaseTraceHierarchyType):
+ _parent_path_str = "sankey"
+ _path_str = "sankey.hoverlabel"
+ _valid_props = {
+ "align",
+ "alignsrc",
+ "bgcolor",
+ "bgcolorsrc",
+ "bordercolor",
+ "bordercolorsrc",
+ "font",
+ "namelength",
+ "namelengthsrc",
+ }
+
+ @property
+ def align(self):
+ """
+ Sets the horizontal alignment of the text content within hover
+ label box. Has an effect only if the hover label text spans
+ more two or more lines
+
+ The 'align' property is an enumeration that may be specified as:
+ - One of the following enumeration values:
+ ['left', 'right', 'auto']
+ - A tuple, list, or one-dimensional numpy array of the above
+
+ Returns
+ -------
+ Any|numpy.ndarray
+ """
+ return self["align"]
+
+ @align.setter
+ def align(self, val):
+ self["align"] = val
+
+ @property
+ def alignsrc(self):
+ """
+ Sets the source reference on Chart Studio Cloud for `align`.
+
+ The 'alignsrc' property must be specified as a string or
+ as a plotly.grid_objs.Column object
+
+ Returns
+ -------
+ str
+ """
+ return self["alignsrc"]
+
+ @alignsrc.setter
+ def alignsrc(self, val):
+ self["alignsrc"] = val
+
+ @property
+ def bgcolor(self):
+ """
+ Sets the background color of the hover labels for this trace
+
+ The 'bgcolor' property is a color and may be specified as:
+ - A hex string (e.g. '#ff0000')
+ - An rgb/rgba string (e.g. 'rgb(255,0,0)')
+ - An hsl/hsla string (e.g. 'hsl(0,100%,50%)')
+ - An hsv/hsva string (e.g. 'hsv(0,100%,100%)')
+ - A named CSS color: see https://plotly.com/python/css-colors/ for a list
+ - A list or array of any of the above
+
+ Returns
+ -------
+ str|numpy.ndarray
+ """
+ return self["bgcolor"]
+
+ @bgcolor.setter
+ def bgcolor(self, val):
+ self["bgcolor"] = val
+
+ @property
+ def bgcolorsrc(self):
+ """
+ Sets the source reference on Chart Studio Cloud for `bgcolor`.
+
+ The 'bgcolorsrc' property must be specified as a string or
+ as a plotly.grid_objs.Column object
+
+ Returns
+ -------
+ str
+ """
+ return self["bgcolorsrc"]
+
+ @bgcolorsrc.setter
+ def bgcolorsrc(self, val):
+ self["bgcolorsrc"] = val
+
+ @property
+ def bordercolor(self):
+ """
+ Sets the border color of the hover labels for this trace.
+
+ The 'bordercolor' property is a color and may be specified as:
+ - A hex string (e.g. '#ff0000')
+ - An rgb/rgba string (e.g. 'rgb(255,0,0)')
+ - An hsl/hsla string (e.g. 'hsl(0,100%,50%)')
+ - An hsv/hsva string (e.g. 'hsv(0,100%,100%)')
+ - A named CSS color: see https://plotly.com/python/css-colors/ for a list
+ - A list or array of any of the above
+
+ Returns
+ -------
+ str|numpy.ndarray
+ """
+ return self["bordercolor"]
+
+ @bordercolor.setter
+ def bordercolor(self, val):
+ self["bordercolor"] = val
+
+ @property
+ def bordercolorsrc(self):
+ """
+ Sets the source reference on Chart Studio Cloud for
+ `bordercolor`.
+
+ The 'bordercolorsrc' property must be specified as a string or
+ as a plotly.grid_objs.Column object
+
+ Returns
+ -------
+ str
+ """
+ return self["bordercolorsrc"]
+
+ @bordercolorsrc.setter
+ def bordercolorsrc(self, val):
+ self["bordercolorsrc"] = val
+
+ @property
+ def font(self):
+ """
+ Sets the font used in hover labels.
+
+ The 'font' property is an instance of Font
+ that may be specified as:
+ - An instance of :class:`plotly.graph_objs.sankey.hoverlabel.Font`
+ - A dict of string/value properties that will be passed
+ to the Font constructor
+
+ Returns
+ -------
+ plotly.graph_objs.sankey.hoverlabel.Font
+ """
+ return self["font"]
+
+ @font.setter
+ def font(self, val):
+ self["font"] = val
+
+ @property
+ def namelength(self):
+ """
+ Sets the default length (in number of characters) of the trace
+ name in the hover labels for all traces. -1 shows the whole
+ name regardless of length. 0-3 shows the first 0-3 characters,
+ and an integer >3 will show the whole name if it is less than
+ that many characters, but if it is longer, will truncate to
+ `namelength - 3` characters and add an ellipsis.
+
+ The 'namelength' property is a integer and may be specified as:
+ - An int (or float that will be cast to an int)
+ in the interval [-1, 9223372036854775807]
+ - A tuple, list, or one-dimensional numpy array of the above
+
+ Returns
+ -------
+ int|numpy.ndarray
+ """
+ return self["namelength"]
+
+ @namelength.setter
+ def namelength(self, val):
+ self["namelength"] = val
+
+ @property
+ def namelengthsrc(self):
+ """
+ Sets the source reference on Chart Studio Cloud for
+ `namelength`.
+
+ The 'namelengthsrc' property must be specified as a string or
+ as a plotly.grid_objs.Column object
+
+ Returns
+ -------
+ str
+ """
+ return self["namelengthsrc"]
+
+ @namelengthsrc.setter
+ def namelengthsrc(self, val):
+ self["namelengthsrc"] = val
+
+ @property
+ def _prop_descriptions(self):
+ return """\
+ align
+ Sets the horizontal alignment of the text content
+ within hover label box. Has an effect only if the hover
+ label text spans more two or more lines
+ alignsrc
+ Sets the source reference on Chart Studio Cloud for
+ `align`.
+ bgcolor
+ Sets the background color of the hover labels for this
+ trace
+ bgcolorsrc
+ Sets the source reference on Chart Studio Cloud for
+ `bgcolor`.
+ bordercolor
+ Sets the border color of the hover labels for this
+ trace.
+ bordercolorsrc
+ Sets the source reference on Chart Studio Cloud for
+ `bordercolor`.
+ font
+ Sets the font used in hover labels.
+ namelength
+ Sets the default length (in number of characters) of
+ the trace name in the hover labels for all traces. -1
+ shows the whole name regardless of length. 0-3 shows
+ the first 0-3 characters, and an integer >3 will show
+ the whole name if it is less than that many characters,
+ but if it is longer, will truncate to `namelength - 3`
+ characters and add an ellipsis.
+ namelengthsrc
+ Sets the source reference on Chart Studio Cloud for
+ `namelength`.
+ """
+
+ def __init__(
+ self,
+ arg=None,
+ align=None,
+ alignsrc=None,
+ bgcolor=None,
+ bgcolorsrc=None,
+ bordercolor=None,
+ bordercolorsrc=None,
+ font=None,
+ namelength=None,
+ namelengthsrc=None,
+ **kwargs,
+ ):
+ """
+ Construct a new Hoverlabel object
+
+ Parameters
+ ----------
+ arg
+ dict of properties compatible with this constructor or
+ an instance of
+ :class:`plotly.graph_objs.sankey.Hoverlabel`
+ align
+ Sets the horizontal alignment of the text content
+ within hover label box. Has an effect only if the hover
+ label text spans more two or more lines
+ alignsrc
+ Sets the source reference on Chart Studio Cloud for
+ `align`.
+ bgcolor
+ Sets the background color of the hover labels for this
+ trace
+ bgcolorsrc
+ Sets the source reference on Chart Studio Cloud for
+ `bgcolor`.
+ bordercolor
+ Sets the border color of the hover labels for this
+ trace.
+ bordercolorsrc
+ Sets the source reference on Chart Studio Cloud for
+ `bordercolor`.
+ font
+ Sets the font used in hover labels.
+ namelength
+ Sets the default length (in number of characters) of
+ the trace name in the hover labels for all traces. -1
+ shows the whole name regardless of length. 0-3 shows
+ the first 0-3 characters, and an integer >3 will show
+ the whole name if it is less than that many characters,
+ but if it is longer, will truncate to `namelength - 3`
+ characters and add an ellipsis.
+ namelengthsrc
+ Sets the source reference on Chart Studio Cloud for
+ `namelength`.
+
+ Returns
+ -------
+ Hoverlabel
+ """
+ super().__init__("hoverlabel")
+ if "_parent" in kwargs:
+ self._parent = kwargs["_parent"]
+ return
+
+ if arg is None:
+ arg = {}
+ elif isinstance(arg, self.__class__):
+ arg = arg.to_plotly_json()
+ elif isinstance(arg, dict):
+ arg = _copy.copy(arg)
+ else:
+ raise ValueError("""\
+The first argument to the plotly.graph_objs.sankey.Hoverlabel
+constructor must be a dict or
+an instance of :class:`plotly.graph_objs.sankey.Hoverlabel`""")
+
+ self._skip_invalid = kwargs.pop("skip_invalid", False)
+ self._validate = kwargs.pop("_validate", True)
+
+ self._set_property("align", arg, align)
+ self._set_property("alignsrc", arg, alignsrc)
+ self._set_property("bgcolor", arg, bgcolor)
+ self._set_property("bgcolorsrc", arg, bgcolorsrc)
+ self._set_property("bordercolor", arg, bordercolor)
+ self._set_property("bordercolorsrc", arg, bordercolorsrc)
+ self._set_property("font", arg, font)
+ self._set_property("namelength", arg, namelength)
+ self._set_property("namelengthsrc", arg, namelengthsrc)
+ self._process_kwargs(**dict(arg, **kwargs))
+ self._skip_invalid = False
diff --git a/venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/_legendgrouptitle.py b/venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/_legendgrouptitle.py
new file mode 100644
index 0000000..8f02463
--- /dev/null
+++ b/venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/_legendgrouptitle.py
@@ -0,0 +1,104 @@
+# --- THIS FILE IS AUTO-GENERATED ---
+# Modifications will be overwitten the next time code generation run.
+
+from plotly.basedatatypes import BaseTraceHierarchyType as _BaseTraceHierarchyType
+import copy as _copy
+
+
+class Legendgrouptitle(_BaseTraceHierarchyType):
+ _parent_path_str = "sankey"
+ _path_str = "sankey.legendgrouptitle"
+ _valid_props = {"font", "text"}
+
+ @property
+ def font(self):
+ """
+ Sets this legend group's title font.
+
+ The 'font' property is an instance of Font
+ that may be specified as:
+ - An instance of :class:`plotly.graph_objs.sankey.legendgrouptitle.Font`
+ - A dict of string/value properties that will be passed
+ to the Font constructor
+
+ Returns
+ -------
+ plotly.graph_objs.sankey.legendgrouptitle.Font
+ """
+ return self["font"]
+
+ @font.setter
+ def font(self, val):
+ self["font"] = val
+
+ @property
+ def text(self):
+ """
+ Sets the title of the legend group.
+
+ The 'text' property is a string and must be specified as:
+ - A string
+ - A number that will be converted to a string
+
+ Returns
+ -------
+ str
+ """
+ return self["text"]
+
+ @text.setter
+ def text(self, val):
+ self["text"] = val
+
+ @property
+ def _prop_descriptions(self):
+ return """\
+ font
+ Sets this legend group's title font.
+ text
+ Sets the title of the legend group.
+ """
+
+ def __init__(self, arg=None, font=None, text=None, **kwargs):
+ """
+ Construct a new Legendgrouptitle object
+
+ Parameters
+ ----------
+ arg
+ dict of properties compatible with this constructor or
+ an instance of
+ :class:`plotly.graph_objs.sankey.Legendgrouptitle`
+ font
+ Sets this legend group's title font.
+ text
+ Sets the title of the legend group.
+
+ Returns
+ -------
+ Legendgrouptitle
+ """
+ super().__init__("legendgrouptitle")
+ if "_parent" in kwargs:
+ self._parent = kwargs["_parent"]
+ return
+
+ if arg is None:
+ arg = {}
+ elif isinstance(arg, self.__class__):
+ arg = arg.to_plotly_json()
+ elif isinstance(arg, dict):
+ arg = _copy.copy(arg)
+ else:
+ raise ValueError("""\
+The first argument to the plotly.graph_objs.sankey.Legendgrouptitle
+constructor must be a dict or
+an instance of :class:`plotly.graph_objs.sankey.Legendgrouptitle`""")
+
+ self._skip_invalid = kwargs.pop("skip_invalid", False)
+ self._validate = kwargs.pop("_validate", True)
+
+ self._set_property("font", arg, font)
+ self._set_property("text", arg, text)
+ self._process_kwargs(**dict(arg, **kwargs))
+ self._skip_invalid = False
diff --git a/venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/_link.py b/venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/_link.py
new file mode 100644
index 0000000..d436fd8
--- /dev/null
+++ b/venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/_link.py
@@ -0,0 +1,784 @@
+# --- THIS FILE IS AUTO-GENERATED ---
+# Modifications will be overwitten the next time code generation run.
+
+from plotly.basedatatypes import BaseTraceHierarchyType as _BaseTraceHierarchyType
+import copy as _copy
+
+
+class Link(_BaseTraceHierarchyType):
+ _parent_path_str = "sankey"
+ _path_str = "sankey.link"
+ _valid_props = {
+ "arrowlen",
+ "color",
+ "colorscaledefaults",
+ "colorscales",
+ "colorsrc",
+ "customdata",
+ "customdatasrc",
+ "hovercolor",
+ "hovercolorsrc",
+ "hoverinfo",
+ "hoverlabel",
+ "hovertemplate",
+ "hovertemplatesrc",
+ "label",
+ "labelsrc",
+ "line",
+ "source",
+ "sourcesrc",
+ "target",
+ "targetsrc",
+ "value",
+ "valuesrc",
+ }
+
+ @property
+ def arrowlen(self):
+ """
+ Sets the length (in px) of the links arrow, if 0 no arrow will
+ be drawn.
+
+ The 'arrowlen' property is a number and may be specified as:
+ - An int or float in the interval [0, inf]
+
+ Returns
+ -------
+ int|float
+ """
+ return self["arrowlen"]
+
+ @arrowlen.setter
+ def arrowlen(self, val):
+ self["arrowlen"] = val
+
+ @property
+ def color(self):
+ """
+ Sets the `link` color. It can be a single value, or an array
+ for specifying color for each `link`. If `link.color` is
+ omitted, then by default, a translucent grey link will be used.
+
+ The 'color' property is a color and may be specified as:
+ - A hex string (e.g. '#ff0000')
+ - An rgb/rgba string (e.g. 'rgb(255,0,0)')
+ - An hsl/hsla string (e.g. 'hsl(0,100%,50%)')
+ - An hsv/hsva string (e.g. 'hsv(0,100%,100%)')
+ - A named CSS color: see https://plotly.com/python/css-colors/ for a list
+ - A list or array of any of the above
+
+ Returns
+ -------
+ str|numpy.ndarray
+ """
+ return self["color"]
+
+ @color.setter
+ def color(self, val):
+ self["color"] = val
+
+ @property
+ def colorscales(self):
+ """
+ The 'colorscales' property is a tuple of instances of
+ Colorscale that may be specified as:
+ - A list or tuple of instances of plotly.graph_objs.sankey.link.Colorscale
+ - A list or tuple of dicts of string/value properties that
+ will be passed to the Colorscale constructor
+
+ Returns
+ -------
+ tuple[plotly.graph_objs.sankey.link.Colorscale]
+ """
+ return self["colorscales"]
+
+ @colorscales.setter
+ def colorscales(self, val):
+ self["colorscales"] = val
+
+ @property
+ def colorscaledefaults(self):
+ """
+ When used in a template (as
+ layout.template.data.sankey.link.colorscaledefaults), sets the
+ default property values to use for elements of
+ sankey.link.colorscales
+
+ The 'colorscaledefaults' property is an instance of Colorscale
+ that may be specified as:
+ - An instance of :class:`plotly.graph_objs.sankey.link.Colorscale`
+ - A dict of string/value properties that will be passed
+ to the Colorscale constructor
+
+ Returns
+ -------
+ plotly.graph_objs.sankey.link.Colorscale
+ """
+ return self["colorscaledefaults"]
+
+ @colorscaledefaults.setter
+ def colorscaledefaults(self, val):
+ self["colorscaledefaults"] = val
+
+ @property
+ def colorsrc(self):
+ """
+ Sets the source reference on Chart Studio Cloud for `color`.
+
+ The 'colorsrc' property must be specified as a string or
+ as a plotly.grid_objs.Column object
+
+ Returns
+ -------
+ str
+ """
+ return self["colorsrc"]
+
+ @colorsrc.setter
+ def colorsrc(self, val):
+ self["colorsrc"] = val
+
+ @property
+ def customdata(self):
+ """
+ Assigns extra data to each link.
+
+ The 'customdata' property is an array that may be specified as a tuple,
+ list, numpy array, or pandas Series
+
+ Returns
+ -------
+ numpy.ndarray
+ """
+ return self["customdata"]
+
+ @customdata.setter
+ def customdata(self, val):
+ self["customdata"] = val
+
+ @property
+ def customdatasrc(self):
+ """
+ Sets the source reference on Chart Studio Cloud for
+ `customdata`.
+
+ The 'customdatasrc' property must be specified as a string or
+ as a plotly.grid_objs.Column object
+
+ Returns
+ -------
+ str
+ """
+ return self["customdatasrc"]
+
+ @customdatasrc.setter
+ def customdatasrc(self, val):
+ self["customdatasrc"] = val
+
+ @property
+ def hovercolor(self):
+ """
+ Sets the `link` hover color. It can be a single value, or an
+ array for specifying hover colors for each `link`. If
+ `link.hovercolor` is omitted, then by default, links will
+ become slightly more opaque when hovered over.
+
+ The 'hovercolor' property is a color and may be specified as:
+ - A hex string (e.g. '#ff0000')
+ - An rgb/rgba string (e.g. 'rgb(255,0,0)')
+ - An hsl/hsla string (e.g. 'hsl(0,100%,50%)')
+ - An hsv/hsva string (e.g. 'hsv(0,100%,100%)')
+ - A named CSS color: see https://plotly.com/python/css-colors/ for a list
+ - A list or array of any of the above
+
+ Returns
+ -------
+ str|numpy.ndarray
+ """
+ return self["hovercolor"]
+
+ @hovercolor.setter
+ def hovercolor(self, val):
+ self["hovercolor"] = val
+
+ @property
+ def hovercolorsrc(self):
+ """
+ Sets the source reference on Chart Studio Cloud for
+ `hovercolor`.
+
+ The 'hovercolorsrc' property must be specified as a string or
+ as a plotly.grid_objs.Column object
+
+ Returns
+ -------
+ str
+ """
+ return self["hovercolorsrc"]
+
+ @hovercolorsrc.setter
+ def hovercolorsrc(self, val):
+ self["hovercolorsrc"] = val
+
+ @property
+ def hoverinfo(self):
+ """
+ Determines which trace information appear when hovering links.
+ If `none` or `skip` are set, no information is displayed upon
+ hovering. But, if `none` is set, click and hover events are
+ still fired.
+
+ The 'hoverinfo' property is an enumeration that may be specified as:
+ - One of the following enumeration values:
+ ['all', 'none', 'skip']
+
+ Returns
+ -------
+ Any
+ """
+ return self["hoverinfo"]
+
+ @hoverinfo.setter
+ def hoverinfo(self, val):
+ self["hoverinfo"] = val
+
+ @property
+ def hoverlabel(self):
+ """
+ The 'hoverlabel' property is an instance of Hoverlabel
+ that may be specified as:
+ - An instance of :class:`plotly.graph_objs.sankey.link.Hoverlabel`
+ - A dict of string/value properties that will be passed
+ to the Hoverlabel constructor
+
+ Returns
+ -------
+ plotly.graph_objs.sankey.link.Hoverlabel
+ """
+ return self["hoverlabel"]
+
+ @hoverlabel.setter
+ def hoverlabel(self, val):
+ self["hoverlabel"] = val
+
+ @property
+ def hovertemplate(self):
+ """
+ Template string used for rendering the information that appear
+ on hover box. Note that this will override `hoverinfo`.
+ Variables are inserted using %{variable}, for example "y: %{y}"
+ as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When
+ showing info for several points, "xother" will be added to
+ those with different x positions from the first point. An
+ underscore before or after "(x|y)other" will add a space on
+ that side, only when this field is shown. Numbers are formatted
+ using d3-format's syntax %{variable:d3-format}, for example
+ "Price: %{y:$.2f}".
+ https://github.com/d3/d3-format/tree/v1.4.5#d3-format for
+ details on the formatting syntax. Dates are formatted using
+ d3-time-format's syntax %{variable|d3-time-format}, for example
+ "Day: %{2019-01-01|%A}". https://github.com/d3/d3-time-
+ format/tree/v2.2.3#locale_format for details on the date
+ formatting syntax. The variables available in `hovertemplate`
+ are the ones emitted as event data described at this link
+ https://plotly.com/javascript/plotlyjs-events/#event-data.
+ Additionally, every attributes that can be specified per-point
+ (the ones that are `arrayOk: true`) are available. Variables
+ `source` and `target` are node objects.Finally, the template
+ string has access to variables `value` and `label`. Anything
+ contained in tag `<extra>` is displayed in the secondary box,
+ for example "<extra>{fullData.name}</extra>". To hide the
+ secondary box completely, use an empty tag `<extra></extra>`.
+
+ The 'hovertemplate' property is a string and must be specified as:
+ - A string
+ - A number that will be converted to a string
+ - A tuple, list, or one-dimensional numpy array of the above
+
+ Returns
+ -------
+ str|numpy.ndarray
+ """
+ return self["hovertemplate"]
+
+ @hovertemplate.setter
+ def hovertemplate(self, val):
+ self["hovertemplate"] = val
+
+ @property
+ def hovertemplatesrc(self):
+ """
+ Sets the source reference on Chart Studio Cloud for
+ `hovertemplate`.
+
+ The 'hovertemplatesrc' property must be specified as a string or
+ as a plotly.grid_objs.Column object
+
+ Returns
+ -------
+ str
+ """
+ return self["hovertemplatesrc"]
+
+ @hovertemplatesrc.setter
+ def hovertemplatesrc(self, val):
+ self["hovertemplatesrc"] = val
+
+ @property
+ def label(self):
+ """
+ The shown name of the link.
+
+ The 'label' property is an array that may be specified as a tuple,
+ list, numpy array, or pandas Series
+
+ Returns
+ -------
+ numpy.ndarray
+ """
+ return self["label"]
+
+ @label.setter
+ def label(self, val):
+ self["label"] = val
+
+ @property
+ def labelsrc(self):
+ """
+ Sets the source reference on Chart Studio Cloud for `label`.
+
+ The 'labelsrc' property must be specified as a string or
+ as a plotly.grid_objs.Column object
+
+ Returns
+ -------
+ str
+ """
+ return self["labelsrc"]
+
+ @labelsrc.setter
+ def labelsrc(self, val):
+ self["labelsrc"] = val
+
+ @property
+ def line(self):
+ """
+ The 'line' property is an instance of Line
+ that may be specified as:
+ - An instance of :class:`plotly.graph_objs.sankey.link.Line`
+ - A dict of string/value properties that will be passed
+ to the Line constructor
+
+ Returns
+ -------
+ plotly.graph_objs.sankey.link.Line
+ """
+ return self["line"]
+
+ @line.setter
+ def line(self, val):
+ self["line"] = val
+
+ @property
+ def source(self):
+ """
+ An integer number `[0..nodes.length - 1]` that represents the
+ source node.
+
+ The 'source' property is an array that may be specified as a tuple,
+ list, numpy array, or pandas Series
+
+ Returns
+ -------
+ numpy.ndarray
+ """
+ return self["source"]
+
+ @source.setter
+ def source(self, val):
+ self["source"] = val
+
+ @property
+ def sourcesrc(self):
+ """
+ Sets the source reference on Chart Studio Cloud for `source`.
+
+ The 'sourcesrc' property must be specified as a string or
+ as a plotly.grid_objs.Column object
+
+ Returns
+ -------
+ str
+ """
+ return self["sourcesrc"]
+
+ @sourcesrc.setter
+ def sourcesrc(self, val):
+ self["sourcesrc"] = val
+
+ @property
+ def target(self):
+ """
+ An integer number `[0..nodes.length - 1]` that represents the
+ target node.
+
+ The 'target' property is an array that may be specified as a tuple,
+ list, numpy array, or pandas Series
+
+ Returns
+ -------
+ numpy.ndarray
+ """
+ return self["target"]
+
+ @target.setter
+ def target(self, val):
+ self["target"] = val
+
+ @property
+ def targetsrc(self):
+ """
+ Sets the source reference on Chart Studio Cloud for `target`.
+
+ The 'targetsrc' property must be specified as a string or
+ as a plotly.grid_objs.Column object
+
+ Returns
+ -------
+ str
+ """
+ return self["targetsrc"]
+
+ @targetsrc.setter
+ def targetsrc(self, val):
+ self["targetsrc"] = val
+
+ @property
+ def value(self):
+ """
+ A numeric value representing the flow volume value.
+
+ The 'value' property is an array that may be specified as a tuple,
+ list, numpy array, or pandas Series
+
+ Returns
+ -------
+ numpy.ndarray
+ """
+ return self["value"]
+
+ @value.setter
+ def value(self, val):
+ self["value"] = val
+
+ @property
+ def valuesrc(self):
+ """
+ Sets the source reference on Chart Studio Cloud for `value`.
+
+ The 'valuesrc' property must be specified as a string or
+ as a plotly.grid_objs.Column object
+
+ Returns
+ -------
+ str
+ """
+ return self["valuesrc"]
+
+ @valuesrc.setter
+ def valuesrc(self, val):
+ self["valuesrc"] = val
+
+ @property
+ def _prop_descriptions(self):
+ return """\
+ arrowlen
+ Sets the length (in px) of the links arrow, if 0 no
+ arrow will be drawn.
+ color
+ Sets the `link` color. It can be a single value, or an
+ array for specifying color for each `link`. If
+ `link.color` is omitted, then by default, a translucent
+ grey link will be used.
+ colorscales
+ A tuple of
+ :class:`plotly.graph_objects.sankey.link.Colorscale`
+ instances or dicts with compatible properties
+ colorscaledefaults
+ When used in a template (as
+ layout.template.data.sankey.link.colorscaledefaults),
+ sets the default property values to use for elements of
+ sankey.link.colorscales
+ colorsrc
+ Sets the source reference on Chart Studio Cloud for
+ `color`.
+ customdata
+ Assigns extra data to each link.
+ customdatasrc
+ Sets the source reference on Chart Studio Cloud for
+ `customdata`.
+ hovercolor
+ Sets the `link` hover color. It can be a single value,
+ or an array for specifying hover colors for each
+ `link`. If `link.hovercolor` is omitted, then by
+ default, links will become slightly more opaque when
+ hovered over.
+ hovercolorsrc
+ Sets the source reference on Chart Studio Cloud for
+ `hovercolor`.
+ hoverinfo
+ Determines which trace information appear when hovering
+ links. If `none` or `skip` are set, no information is
+ displayed upon hovering. But, if `none` is set, click
+ and hover events are still fired.
+ hoverlabel
+ :class:`plotly.graph_objects.sankey.link.Hoverlabel`
+ instance or dict with compatible properties
+ hovertemplate
+ Template string used for rendering the information that
+ appear on hover box. Note that this will override
+ `hoverinfo`. Variables are inserted using %{variable},
+ for example "y: %{y}" as well as %{xother}, {%_xother},
+ {%_xother_}, {%xother_}. When showing info for several
+ points, "xother" will be added to those with different
+ x positions from the first point. An underscore before
+ or after "(x|y)other" will add a space on that side,
+ only when this field is shown. Numbers are formatted
+ using d3-format's syntax %{variable:d3-format}, for
+ example "Price: %{y:$.2f}".
+ https://github.com/d3/d3-format/tree/v1.4.5#d3-format
+ for details on the formatting syntax. Dates are
+ formatted using d3-time-format's syntax
+ %{variable|d3-time-format}, for example "Day:
+ %{2019-01-01|%A}". https://github.com/d3/d3-time-
+ format/tree/v2.2.3#locale_format for details on the
+ date formatting syntax. The variables available in
+ `hovertemplate` are the ones emitted as event data
+ described at this link
+ https://plotly.com/javascript/plotlyjs-events/#event-
+ data. Additionally, every attributes that can be
+ specified per-point (the ones that are `arrayOk: true`)
+ are available. Variables `source` and `target` are
+ node objects.Finally, the template string has access to
+ variables `value` and `label`. Anything contained in
+ tag `<extra>` is displayed in the secondary box, for
+ example "<extra>{fullData.name}</extra>". To hide the
+ secondary box completely, use an empty tag
+ `<extra></extra>`.
+ hovertemplatesrc
+ Sets the source reference on Chart Studio Cloud for
+ `hovertemplate`.
+ label
+ The shown name of the link.
+ labelsrc
+ Sets the source reference on Chart Studio Cloud for
+ `label`.
+ line
+ :class:`plotly.graph_objects.sankey.link.Line` instance
+ or dict with compatible properties
+ source
+ An integer number `[0..nodes.length - 1]` that
+ represents the source node.
+ sourcesrc
+ Sets the source reference on Chart Studio Cloud for
+ `source`.
+ target
+ An integer number `[0..nodes.length - 1]` that
+ represents the target node.
+ targetsrc
+ Sets the source reference on Chart Studio Cloud for
+ `target`.
+ value
+ A numeric value representing the flow volume value.
+ valuesrc
+ Sets the source reference on Chart Studio Cloud for
+ `value`.
+ """
+
+ def __init__(
+ self,
+ arg=None,
+ arrowlen=None,
+ color=None,
+ colorscales=None,
+ colorscaledefaults=None,
+ colorsrc=None,
+ customdata=None,
+ customdatasrc=None,
+ hovercolor=None,
+ hovercolorsrc=None,
+ hoverinfo=None,
+ hoverlabel=None,
+ hovertemplate=None,
+ hovertemplatesrc=None,
+ label=None,
+ labelsrc=None,
+ line=None,
+ source=None,
+ sourcesrc=None,
+ target=None,
+ targetsrc=None,
+ value=None,
+ valuesrc=None,
+ **kwargs,
+ ):
+ """
+ Construct a new Link object
+
+ The links of the Sankey plot.
+
+ Parameters
+ ----------
+ arg
+ dict of properties compatible with this constructor or
+ an instance of :class:`plotly.graph_objs.sankey.Link`
+ arrowlen
+ Sets the length (in px) of the links arrow, if 0 no
+ arrow will be drawn.
+ color
+ Sets the `link` color. It can be a single value, or an
+ array for specifying color for each `link`. If
+ `link.color` is omitted, then by default, a translucent
+ grey link will be used.
+ colorscales
+ A tuple of
+ :class:`plotly.graph_objects.sankey.link.Colorscale`
+ instances or dicts with compatible properties
+ colorscaledefaults
+ When used in a template (as
+ layout.template.data.sankey.link.colorscaledefaults),
+ sets the default property values to use for elements of
+ sankey.link.colorscales
+ colorsrc
+ Sets the source reference on Chart Studio Cloud for
+ `color`.
+ customdata
+ Assigns extra data to each link.
+ customdatasrc
+ Sets the source reference on Chart Studio Cloud for
+ `customdata`.
+ hovercolor
+ Sets the `link` hover color. It can be a single value,
+ or an array for specifying hover colors for each
+ `link`. If `link.hovercolor` is omitted, then by
+ default, links will become slightly more opaque when
+ hovered over.
+ hovercolorsrc
+ Sets the source reference on Chart Studio Cloud for
+ `hovercolor`.
+ hoverinfo
+ Determines which trace information appear when hovering
+ links. If `none` or `skip` are set, no information is
+ displayed upon hovering. But, if `none` is set, click
+ and hover events are still fired.
+ hoverlabel
+ :class:`plotly.graph_objects.sankey.link.Hoverlabel`
+ instance or dict with compatible properties
+ hovertemplate
+ Template string used for rendering the information that
+ appear on hover box. Note that this will override
+ `hoverinfo`. Variables are inserted using %{variable},
+ for example "y: %{y}" as well as %{xother}, {%_xother},
+ {%_xother_}, {%xother_}. When showing info for several
+ points, "xother" will be added to those with different
+ x positions from the first point. An underscore before
+ or after "(x|y)other" will add a space on that side,
+ only when this field is shown. Numbers are formatted
+ using d3-format's syntax %{variable:d3-format}, for
+ example "Price: %{y:$.2f}".
+ https://github.com/d3/d3-format/tree/v1.4.5#d3-format
+ for details on the formatting syntax. Dates are
+ formatted using d3-time-format's syntax
+ %{variable|d3-time-format}, for example "Day:
+ %{2019-01-01|%A}". https://github.com/d3/d3-time-
+ format/tree/v2.2.3#locale_format for details on the
+ date formatting syntax. The variables available in
+ `hovertemplate` are the ones emitted as event data
+ described at this link
+ https://plotly.com/javascript/plotlyjs-events/#event-
+ data. Additionally, every attributes that can be
+ specified per-point (the ones that are `arrayOk: true`)
+ are available. Variables `source` and `target` are
+ node objects.Finally, the template string has access to
+ variables `value` and `label`. Anything contained in
+ tag `<extra>` is displayed in the secondary box, for
+ example "<extra>{fullData.name}</extra>". To hide the
+ secondary box completely, use an empty tag
+ `<extra></extra>`.
+ hovertemplatesrc
+ Sets the source reference on Chart Studio Cloud for
+ `hovertemplate`.
+ label
+ The shown name of the link.
+ labelsrc
+ Sets the source reference on Chart Studio Cloud for
+ `label`.
+ line
+ :class:`plotly.graph_objects.sankey.link.Line` instance
+ or dict with compatible properties
+ source
+ An integer number `[0..nodes.length - 1]` that
+ represents the source node.
+ sourcesrc
+ Sets the source reference on Chart Studio Cloud for
+ `source`.
+ target
+ An integer number `[0..nodes.length - 1]` that
+ represents the target node.
+ targetsrc
+ Sets the source reference on Chart Studio Cloud for
+ `target`.
+ value
+ A numeric value representing the flow volume value.
+ valuesrc
+ Sets the source reference on Chart Studio Cloud for
+ `value`.
+
+ Returns
+ -------
+ Link
+ """
+ super().__init__("link")
+ if "_parent" in kwargs:
+ self._parent = kwargs["_parent"]
+ return
+
+ if arg is None:
+ arg = {}
+ elif isinstance(arg, self.__class__):
+ arg = arg.to_plotly_json()
+ elif isinstance(arg, dict):
+ arg = _copy.copy(arg)
+ else:
+ raise ValueError("""\
+The first argument to the plotly.graph_objs.sankey.Link
+constructor must be a dict or
+an instance of :class:`plotly.graph_objs.sankey.Link`""")
+
+ self._skip_invalid = kwargs.pop("skip_invalid", False)
+ self._validate = kwargs.pop("_validate", True)
+
+ self._set_property("arrowlen", arg, arrowlen)
+ self._set_property("color", arg, color)
+ self._set_property("colorscales", arg, colorscales)
+ self._set_property("colorscaledefaults", arg, colorscaledefaults)
+ self._set_property("colorsrc", arg, colorsrc)
+ self._set_property("customdata", arg, customdata)
+ self._set_property("customdatasrc", arg, customdatasrc)
+ self._set_property("hovercolor", arg, hovercolor)
+ self._set_property("hovercolorsrc", arg, hovercolorsrc)
+ self._set_property("hoverinfo", arg, hoverinfo)
+ self._set_property("hoverlabel", arg, hoverlabel)
+ self._set_property("hovertemplate", arg, hovertemplate)
+ self._set_property("hovertemplatesrc", arg, hovertemplatesrc)
+ self._set_property("label", arg, label)
+ self._set_property("labelsrc", arg, labelsrc)
+ self._set_property("line", arg, line)
+ self._set_property("source", arg, source)
+ self._set_property("sourcesrc", arg, sourcesrc)
+ self._set_property("target", arg, target)
+ self._set_property("targetsrc", arg, targetsrc)
+ self._set_property("value", arg, value)
+ self._set_property("valuesrc", arg, valuesrc)
+ self._process_kwargs(**dict(arg, **kwargs))
+ self._skip_invalid = False
diff --git a/venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/_node.py b/venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/_node.py
new file mode 100644
index 0000000..1e05e7a
--- /dev/null
+++ b/venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/_node.py
@@ -0,0 +1,682 @@
+# --- THIS FILE IS AUTO-GENERATED ---
+# Modifications will be overwitten the next time code generation run.
+
+from plotly.basedatatypes import BaseTraceHierarchyType as _BaseTraceHierarchyType
+import copy as _copy
+
+
+class Node(_BaseTraceHierarchyType):
+ _parent_path_str = "sankey"
+ _path_str = "sankey.node"
+ _valid_props = {
+ "align",
+ "color",
+ "colorsrc",
+ "customdata",
+ "customdatasrc",
+ "groups",
+ "hoverinfo",
+ "hoverlabel",
+ "hovertemplate",
+ "hovertemplatesrc",
+ "label",
+ "labelsrc",
+ "line",
+ "pad",
+ "thickness",
+ "x",
+ "xsrc",
+ "y",
+ "ysrc",
+ }
+
+ @property
+ def align(self):
+ """
+ Sets the alignment method used to position the nodes along the
+ horizontal axis.
+
+ The 'align' property is an enumeration that may be specified as:
+ - One of the following enumeration values:
+ ['justify', 'left', 'right', 'center']
+
+ Returns
+ -------
+ Any
+ """
+ return self["align"]
+
+ @align.setter
+ def align(self, val):
+ self["align"] = val
+
+ @property
+ def color(self):
+ """
+ Sets the `node` color. It can be a single value, or an array
+ for specifying color for each `node`. If `node.color` is
+ omitted, then the default `Plotly` color palette will be cycled
+ through to have a variety of colors. These defaults are not
+ fully opaque, to allow some visibility of what is beneath the
+ node.
+
+ The 'color' property is a color and may be specified as:
+ - A hex string (e.g. '#ff0000')
+ - An rgb/rgba string (e.g. 'rgb(255,0,0)')
+ - An hsl/hsla string (e.g. 'hsl(0,100%,50%)')
+ - An hsv/hsva string (e.g. 'hsv(0,100%,100%)')
+ - A named CSS color: see https://plotly.com/python/css-colors/ for a list
+ - A list or array of any of the above
+
+ Returns
+ -------
+ str|numpy.ndarray
+ """
+ return self["color"]
+
+ @color.setter
+ def color(self, val):
+ self["color"] = val
+
+ @property
+ def colorsrc(self):
+ """
+ Sets the source reference on Chart Studio Cloud for `color`.
+
+ The 'colorsrc' property must be specified as a string or
+ as a plotly.grid_objs.Column object
+
+ Returns
+ -------
+ str
+ """
+ return self["colorsrc"]
+
+ @colorsrc.setter
+ def colorsrc(self, val):
+ self["colorsrc"] = val
+
+ @property
+ def customdata(self):
+ """
+ Assigns extra data to each node.
+
+ The 'customdata' property is an array that may be specified as a tuple,
+ list, numpy array, or pandas Series
+
+ Returns
+ -------
+ numpy.ndarray
+ """
+ return self["customdata"]
+
+ @customdata.setter
+ def customdata(self, val):
+ self["customdata"] = val
+
+ @property
+ def customdatasrc(self):
+ """
+ Sets the source reference on Chart Studio Cloud for
+ `customdata`.
+
+ The 'customdatasrc' property must be specified as a string or
+ as a plotly.grid_objs.Column object
+
+ Returns
+ -------
+ str
+ """
+ return self["customdatasrc"]
+
+ @customdatasrc.setter
+ def customdatasrc(self, val):
+ self["customdatasrc"] = val
+
+ @property
+ def groups(self):
+ """
+ Groups of nodes. Each group is defined by an array with the
+ indices of the nodes it contains. Multiple groups can be
+ specified.
+
+ The 'groups' property is an info array that may be specified as:
+ * a 2D list where:
+ The 'groups[i][j]' property is a number and may be specified as:
+ - An int or float
+
+ Returns
+ -------
+ list
+ """
+ return self["groups"]
+
+ @groups.setter
+ def groups(self, val):
+ self["groups"] = val
+
+ @property
+ def hoverinfo(self):
+ """
+ Determines which trace information appear when hovering nodes.
+ If `none` or `skip` are set, no information is displayed upon
+ hovering. But, if `none` is set, click and hover events are
+ still fired.
+
+ The 'hoverinfo' property is an enumeration that may be specified as:
+ - One of the following enumeration values:
+ ['all', 'none', 'skip']
+
+ Returns
+ -------
+ Any
+ """
+ return self["hoverinfo"]
+
+ @hoverinfo.setter
+ def hoverinfo(self, val):
+ self["hoverinfo"] = val
+
+ @property
+ def hoverlabel(self):
+ """
+ The 'hoverlabel' property is an instance of Hoverlabel
+ that may be specified as:
+ - An instance of :class:`plotly.graph_objs.sankey.node.Hoverlabel`
+ - A dict of string/value properties that will be passed
+ to the Hoverlabel constructor
+
+ Returns
+ -------
+ plotly.graph_objs.sankey.node.Hoverlabel
+ """
+ return self["hoverlabel"]
+
+ @hoverlabel.setter
+ def hoverlabel(self, val):
+ self["hoverlabel"] = val
+
+ @property
+ def hovertemplate(self):
+ """
+ Template string used for rendering the information that appear
+ on hover box. Note that this will override `hoverinfo`.
+ Variables are inserted using %{variable}, for example "y: %{y}"
+ as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When
+ showing info for several points, "xother" will be added to
+ those with different x positions from the first point. An
+ underscore before or after "(x|y)other" will add a space on
+ that side, only when this field is shown. Numbers are formatted
+ using d3-format's syntax %{variable:d3-format}, for example
+ "Price: %{y:$.2f}".
+ https://github.com/d3/d3-format/tree/v1.4.5#d3-format for
+ details on the formatting syntax. Dates are formatted using
+ d3-time-format's syntax %{variable|d3-time-format}, for example
+ "Day: %{2019-01-01|%A}". https://github.com/d3/d3-time-
+ format/tree/v2.2.3#locale_format for details on the date
+ formatting syntax. The variables available in `hovertemplate`
+ are the ones emitted as event data described at this link
+ https://plotly.com/javascript/plotlyjs-events/#event-data.
+ Additionally, every attributes that can be specified per-point
+ (the ones that are `arrayOk: true`) are available. Variables
+ `sourceLinks` and `targetLinks` are arrays of link
+ objects.Finally, the template string has access to variables
+ `value` and `label`. Anything contained in tag `<extra>` is
+ displayed in the secondary box, for example
+ "<extra>{fullData.name}</extra>". To hide the secondary box
+ completely, use an empty tag `<extra></extra>`.
+
+ The 'hovertemplate' property is a string and must be specified as:
+ - A string
+ - A number that will be converted to a string
+ - A tuple, list, or one-dimensional numpy array of the above
+
+ Returns
+ -------
+ str|numpy.ndarray
+ """
+ return self["hovertemplate"]
+
+ @hovertemplate.setter
+ def hovertemplate(self, val):
+ self["hovertemplate"] = val
+
+ @property
+ def hovertemplatesrc(self):
+ """
+ Sets the source reference on Chart Studio Cloud for
+ `hovertemplate`.
+
+ The 'hovertemplatesrc' property must be specified as a string or
+ as a plotly.grid_objs.Column object
+
+ Returns
+ -------
+ str
+ """
+ return self["hovertemplatesrc"]
+
+ @hovertemplatesrc.setter
+ def hovertemplatesrc(self, val):
+ self["hovertemplatesrc"] = val
+
+ @property
+ def label(self):
+ """
+ The shown name of the node.
+
+ The 'label' property is an array that may be specified as a tuple,
+ list, numpy array, or pandas Series
+
+ Returns
+ -------
+ numpy.ndarray
+ """
+ return self["label"]
+
+ @label.setter
+ def label(self, val):
+ self["label"] = val
+
+ @property
+ def labelsrc(self):
+ """
+ Sets the source reference on Chart Studio Cloud for `label`.
+
+ The 'labelsrc' property must be specified as a string or
+ as a plotly.grid_objs.Column object
+
+ Returns
+ -------
+ str
+ """
+ return self["labelsrc"]
+
+ @labelsrc.setter
+ def labelsrc(self, val):
+ self["labelsrc"] = val
+
+ @property
+ def line(self):
+ """
+ The 'line' property is an instance of Line
+ that may be specified as:
+ - An instance of :class:`plotly.graph_objs.sankey.node.Line`
+ - A dict of string/value properties that will be passed
+ to the Line constructor
+
+ Returns
+ -------
+ plotly.graph_objs.sankey.node.Line
+ """
+ return self["line"]
+
+ @line.setter
+ def line(self, val):
+ self["line"] = val
+
+ @property
+ def pad(self):
+ """
+ Sets the padding (in px) between the `nodes`.
+
+ The 'pad' property is a number and may be specified as:
+ - An int or float in the interval [0, inf]
+
+ Returns
+ -------
+ int|float
+ """
+ return self["pad"]
+
+ @pad.setter
+ def pad(self, val):
+ self["pad"] = val
+
+ @property
+ def thickness(self):
+ """
+ Sets the thickness (in px) of the `nodes`.
+
+ The 'thickness' property is a number and may be specified as:
+ - An int or float in the interval [1, inf]
+
+ Returns
+ -------
+ int|float
+ """
+ return self["thickness"]
+
+ @thickness.setter
+ def thickness(self, val):
+ self["thickness"] = val
+
+ @property
+ def x(self):
+ """
+ The normalized horizontal position of the node.
+
+ The 'x' property is an array that may be specified as a tuple,
+ list, numpy array, or pandas Series
+
+ Returns
+ -------
+ numpy.ndarray
+ """
+ return self["x"]
+
+ @x.setter
+ def x(self, val):
+ self["x"] = val
+
+ @property
+ def xsrc(self):
+ """
+ Sets the source reference on Chart Studio Cloud for `x`.
+
+ The 'xsrc' property must be specified as a string or
+ as a plotly.grid_objs.Column object
+
+ Returns
+ -------
+ str
+ """
+ return self["xsrc"]
+
+ @xsrc.setter
+ def xsrc(self, val):
+ self["xsrc"] = val
+
+ @property
+ def y(self):
+ """
+ The normalized vertical position of the node.
+
+ The 'y' property is an array that may be specified as a tuple,
+ list, numpy array, or pandas Series
+
+ Returns
+ -------
+ numpy.ndarray
+ """
+ return self["y"]
+
+ @y.setter
+ def y(self, val):
+ self["y"] = val
+
+ @property
+ def ysrc(self):
+ """
+ Sets the source reference on Chart Studio Cloud for `y`.
+
+ The 'ysrc' property must be specified as a string or
+ as a plotly.grid_objs.Column object
+
+ Returns
+ -------
+ str
+ """
+ return self["ysrc"]
+
+ @ysrc.setter
+ def ysrc(self, val):
+ self["ysrc"] = val
+
+ @property
+ def _prop_descriptions(self):
+ return """\
+ align
+ Sets the alignment method used to position the nodes
+ along the horizontal axis.
+ color
+ Sets the `node` color. It can be a single value, or an
+ array for specifying color for each `node`. If
+ `node.color` is omitted, then the default `Plotly`
+ color palette will be cycled through to have a variety
+ of colors. These defaults are not fully opaque, to
+ allow some visibility of what is beneath the node.
+ colorsrc
+ Sets the source reference on Chart Studio Cloud for
+ `color`.
+ customdata
+ Assigns extra data to each node.
+ customdatasrc
+ Sets the source reference on Chart Studio Cloud for
+ `customdata`.
+ groups
+ Groups of nodes. Each group is defined by an array with
+ the indices of the nodes it contains. Multiple groups
+ can be specified.
+ hoverinfo
+ Determines which trace information appear when hovering
+ nodes. If `none` or `skip` are set, no information is
+ displayed upon hovering. But, if `none` is set, click
+ and hover events are still fired.
+ hoverlabel
+ :class:`plotly.graph_objects.sankey.node.Hoverlabel`
+ instance or dict with compatible properties
+ hovertemplate
+ Template string used for rendering the information that
+ appear on hover box. Note that this will override
+ `hoverinfo`. Variables are inserted using %{variable},
+ for example "y: %{y}" as well as %{xother}, {%_xother},
+ {%_xother_}, {%xother_}. When showing info for several
+ points, "xother" will be added to those with different
+ x positions from the first point. An underscore before
+ or after "(x|y)other" will add a space on that side,
+ only when this field is shown. Numbers are formatted
+ using d3-format's syntax %{variable:d3-format}, for
+ example "Price: %{y:$.2f}".
+ https://github.com/d3/d3-format/tree/v1.4.5#d3-format
+ for details on the formatting syntax. Dates are
+ formatted using d3-time-format's syntax
+ %{variable|d3-time-format}, for example "Day:
+ %{2019-01-01|%A}". https://github.com/d3/d3-time-
+ format/tree/v2.2.3#locale_format for details on the
+ date formatting syntax. The variables available in
+ `hovertemplate` are the ones emitted as event data
+ described at this link
+ https://plotly.com/javascript/plotlyjs-events/#event-
+ data. Additionally, every attributes that can be
+ specified per-point (the ones that are `arrayOk: true`)
+ are available. Variables `sourceLinks` and
+ `targetLinks` are arrays of link objects.Finally, the
+ template string has access to variables `value` and
+ `label`. Anything contained in tag `<extra>` is
+ displayed in the secondary box, for example
+ "<extra>{fullData.name}</extra>". To hide the secondary
+ box completely, use an empty tag `<extra></extra>`.
+ hovertemplatesrc
+ Sets the source reference on Chart Studio Cloud for
+ `hovertemplate`.
+ label
+ The shown name of the node.
+ labelsrc
+ Sets the source reference on Chart Studio Cloud for
+ `label`.
+ line
+ :class:`plotly.graph_objects.sankey.node.Line` instance
+ or dict with compatible properties
+ pad
+ Sets the padding (in px) between the `nodes`.
+ thickness
+ Sets the thickness (in px) of the `nodes`.
+ x
+ The normalized horizontal position of the node.
+ xsrc
+ Sets the source reference on Chart Studio Cloud for
+ `x`.
+ y
+ The normalized vertical position of the node.
+ ysrc
+ Sets the source reference on Chart Studio Cloud for
+ `y`.
+ """
+
+ def __init__(
+ self,
+ arg=None,
+ align=None,
+ color=None,
+ colorsrc=None,
+ customdata=None,
+ customdatasrc=None,
+ groups=None,
+ hoverinfo=None,
+ hoverlabel=None,
+ hovertemplate=None,
+ hovertemplatesrc=None,
+ label=None,
+ labelsrc=None,
+ line=None,
+ pad=None,
+ thickness=None,
+ x=None,
+ xsrc=None,
+ y=None,
+ ysrc=None,
+ **kwargs,
+ ):
+ """
+ Construct a new Node object
+
+ The nodes of the Sankey plot.
+
+ Parameters
+ ----------
+ arg
+ dict of properties compatible with this constructor or
+ an instance of :class:`plotly.graph_objs.sankey.Node`
+ align
+ Sets the alignment method used to position the nodes
+ along the horizontal axis.
+ color
+ Sets the `node` color. It can be a single value, or an
+ array for specifying color for each `node`. If
+ `node.color` is omitted, then the default `Plotly`
+ color palette will be cycled through to have a variety
+ of colors. These defaults are not fully opaque, to
+ allow some visibility of what is beneath the node.
+ colorsrc
+ Sets the source reference on Chart Studio Cloud for
+ `color`.
+ customdata
+ Assigns extra data to each node.
+ customdatasrc
+ Sets the source reference on Chart Studio Cloud for
+ `customdata`.
+ groups
+ Groups of nodes. Each group is defined by an array with
+ the indices of the nodes it contains. Multiple groups
+ can be specified.
+ hoverinfo
+ Determines which trace information appear when hovering
+ nodes. If `none` or `skip` are set, no information is
+ displayed upon hovering. But, if `none` is set, click
+ and hover events are still fired.
+ hoverlabel
+ :class:`plotly.graph_objects.sankey.node.Hoverlabel`
+ instance or dict with compatible properties
+ hovertemplate
+ Template string used for rendering the information that
+ appear on hover box. Note that this will override
+ `hoverinfo`. Variables are inserted using %{variable},
+ for example "y: %{y}" as well as %{xother}, {%_xother},
+ {%_xother_}, {%xother_}. When showing info for several
+ points, "xother" will be added to those with different
+ x positions from the first point. An underscore before
+ or after "(x|y)other" will add a space on that side,
+ only when this field is shown. Numbers are formatted
+ using d3-format's syntax %{variable:d3-format}, for
+ example "Price: %{y:$.2f}".
+ https://github.com/d3/d3-format/tree/v1.4.5#d3-format
+ for details on the formatting syntax. Dates are
+ formatted using d3-time-format's syntax
+ %{variable|d3-time-format}, for example "Day:
+ %{2019-01-01|%A}". https://github.com/d3/d3-time-
+ format/tree/v2.2.3#locale_format for details on the
+ date formatting syntax. The variables available in
+ `hovertemplate` are the ones emitted as event data
+ described at this link
+ https://plotly.com/javascript/plotlyjs-events/#event-
+ data. Additionally, every attributes that can be
+ specified per-point (the ones that are `arrayOk: true`)
+ are available. Variables `sourceLinks` and
+ `targetLinks` are arrays of link objects.Finally, the
+ template string has access to variables `value` and
+ `label`. Anything contained in tag `<extra>` is
+ displayed in the secondary box, for example
+ "<extra>{fullData.name}</extra>". To hide the secondary
+ box completely, use an empty tag `<extra></extra>`.
+ hovertemplatesrc
+ Sets the source reference on Chart Studio Cloud for
+ `hovertemplate`.
+ label
+ The shown name of the node.
+ labelsrc
+ Sets the source reference on Chart Studio Cloud for
+ `label`.
+ line
+ :class:`plotly.graph_objects.sankey.node.Line` instance
+ or dict with compatible properties
+ pad
+ Sets the padding (in px) between the `nodes`.
+ thickness
+ Sets the thickness (in px) of the `nodes`.
+ x
+ The normalized horizontal position of the node.
+ xsrc
+ Sets the source reference on Chart Studio Cloud for
+ `x`.
+ y
+ The normalized vertical position of the node.
+ ysrc
+ Sets the source reference on Chart Studio Cloud for
+ `y`.
+
+ Returns
+ -------
+ Node
+ """
+ super().__init__("node")
+ if "_parent" in kwargs:
+ self._parent = kwargs["_parent"]
+ return
+
+ if arg is None:
+ arg = {}
+ elif isinstance(arg, self.__class__):
+ arg = arg.to_plotly_json()
+ elif isinstance(arg, dict):
+ arg = _copy.copy(arg)
+ else:
+ raise ValueError("""\
+The first argument to the plotly.graph_objs.sankey.Node
+constructor must be a dict or
+an instance of :class:`plotly.graph_objs.sankey.Node`""")
+
+ self._skip_invalid = kwargs.pop("skip_invalid", False)
+ self._validate = kwargs.pop("_validate", True)
+
+ self._set_property("align", arg, align)
+ self._set_property("color", arg, color)
+ self._set_property("colorsrc", arg, colorsrc)
+ self._set_property("customdata", arg, customdata)
+ self._set_property("customdatasrc", arg, customdatasrc)
+ self._set_property("groups", arg, groups)
+ self._set_property("hoverinfo", arg, hoverinfo)
+ self._set_property("hoverlabel", arg, hoverlabel)
+ self._set_property("hovertemplate", arg, hovertemplate)
+ self._set_property("hovertemplatesrc", arg, hovertemplatesrc)
+ self._set_property("label", arg, label)
+ self._set_property("labelsrc", arg, labelsrc)
+ self._set_property("line", arg, line)
+ self._set_property("pad", arg, pad)
+ self._set_property("thickness", arg, thickness)
+ self._set_property("x", arg, x)
+ self._set_property("xsrc", arg, xsrc)
+ self._set_property("y", arg, y)
+ self._set_property("ysrc", arg, ysrc)
+ self._process_kwargs(**dict(arg, **kwargs))
+ self._skip_invalid = False
diff --git a/venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/_stream.py b/venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/_stream.py
new file mode 100644
index 0000000..542d7c1
--- /dev/null
+++ b/venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/_stream.py
@@ -0,0 +1,113 @@
+# --- THIS FILE IS AUTO-GENERATED ---
+# Modifications will be overwitten the next time code generation run.
+
+from plotly.basedatatypes import BaseTraceHierarchyType as _BaseTraceHierarchyType
+import copy as _copy
+
+
+class Stream(_BaseTraceHierarchyType):
+ _parent_path_str = "sankey"
+ _path_str = "sankey.stream"
+ _valid_props = {"maxpoints", "token"}
+
+ @property
+ def maxpoints(self):
+ """
+ Sets the maximum number of points to keep on the plots from an
+ incoming stream. If `maxpoints` is set to 50, only the newest
+ 50 points will be displayed on the plot.
+
+ The 'maxpoints' property is a number and may be specified as:
+ - An int or float in the interval [0, 10000]
+
+ Returns
+ -------
+ int|float
+ """
+ return self["maxpoints"]
+
+ @maxpoints.setter
+ def maxpoints(self, val):
+ self["maxpoints"] = val
+
+ @property
+ def token(self):
+ """
+ The stream id number links a data trace on a plot with a
+ stream. See https://chart-studio.plotly.com/settings for more
+ details.
+
+ The 'token' property is a string and must be specified as:
+ - A non-empty string
+
+ Returns
+ -------
+ str
+ """
+ return self["token"]
+
+ @token.setter
+ def token(self, val):
+ self["token"] = val
+
+ @property
+ def _prop_descriptions(self):
+ return """\
+ maxpoints
+ Sets the maximum number of points to keep on the plots
+ from an incoming stream. If `maxpoints` is set to 50,
+ only the newest 50 points will be displayed on the
+ plot.
+ token
+ The stream id number links a data trace on a plot with
+ a stream. See https://chart-studio.plotly.com/settings
+ for more details.
+ """
+
+ def __init__(self, arg=None, maxpoints=None, token=None, **kwargs):
+ """
+ Construct a new Stream object
+
+ Parameters
+ ----------
+ arg
+ dict of properties compatible with this constructor or
+ an instance of :class:`plotly.graph_objs.sankey.Stream`
+ maxpoints
+ Sets the maximum number of points to keep on the plots
+ from an incoming stream. If `maxpoints` is set to 50,
+ only the newest 50 points will be displayed on the
+ plot.
+ token
+ The stream id number links a data trace on a plot with
+ a stream. See https://chart-studio.plotly.com/settings
+ for more details.
+
+ Returns
+ -------
+ Stream
+ """
+ super().__init__("stream")
+ if "_parent" in kwargs:
+ self._parent = kwargs["_parent"]
+ return
+
+ if arg is None:
+ arg = {}
+ elif isinstance(arg, self.__class__):
+ arg = arg.to_plotly_json()
+ elif isinstance(arg, dict):
+ arg = _copy.copy(arg)
+ else:
+ raise ValueError("""\
+The first argument to the plotly.graph_objs.sankey.Stream
+constructor must be a dict or
+an instance of :class:`plotly.graph_objs.sankey.Stream`""")
+
+ self._skip_invalid = kwargs.pop("skip_invalid", False)
+ self._validate = kwargs.pop("_validate", True)
+
+ self._set_property("maxpoints", arg, maxpoints)
+ self._set_property("token", arg, token)
+ self._process_kwargs(**dict(arg, **kwargs))
+ self._skip_invalid = False
diff --git a/venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/_textfont.py b/venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/_textfont.py
new file mode 100644
index 0000000..d052501
--- /dev/null
+++ b/venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/_textfont.py
@@ -0,0 +1,334 @@
+# --- THIS FILE IS AUTO-GENERATED ---
+# Modifications will be overwitten the next time code generation run.
+
+from plotly.basedatatypes import BaseTraceHierarchyType as _BaseTraceHierarchyType
+import copy as _copy
+
+
+class Textfont(_BaseTraceHierarchyType):
+ _parent_path_str = "sankey"
+ _path_str = "sankey.textfont"
+ _valid_props = {
+ "color",
+ "family",
+ "lineposition",
+ "shadow",
+ "size",
+ "style",
+ "textcase",
+ "variant",
+ "weight",
+ }
+
+ @property
+ def color(self):
+ """
+ The 'color' property is a color and may be specified as:
+ - A hex string (e.g. '#ff0000')
+ - An rgb/rgba string (e.g. 'rgb(255,0,0)')
+ - An hsl/hsla string (e.g. 'hsl(0,100%,50%)')
+ - An hsv/hsva string (e.g. 'hsv(0,100%,100%)')
+ - A named CSS color: see https://plotly.com/python/css-colors/ for a list
+
+ Returns
+ -------
+ str
+ """
+ return self["color"]
+
+ @color.setter
+ def color(self, val):
+ self["color"] = val
+
+ @property
+ def family(self):
+ """
+ HTML font family - the typeface that will be applied by the web
+ browser. The web browser can only apply a font if it is
+ available on the system where it runs. Provide multiple font
+ families, separated by commas, to indicate the order in which
+ to apply fonts if they aren't available.
+
+ The 'family' property is a string and must be specified as:
+ - A non-empty string
+
+ Returns
+ -------
+ str
+ """
+ return self["family"]
+
+ @family.setter
+ def family(self, val):
+ self["family"] = val
+
+ @property
+ def lineposition(self):
+ """
+ Sets the kind of decoration line(s) with text, such as an
+ "under", "over" or "through" as well as combinations e.g.
+ "under+over", etc.
+
+ The 'lineposition' property is a flaglist and may be specified
+ as a string containing:
+ - Any combination of ['under', 'over', 'through'] joined with '+' characters
+ (e.g. 'under+over')
+ OR exactly one of ['none'] (e.g. 'none')
+
+ Returns
+ -------
+ Any
+ """
+ return self["lineposition"]
+
+ @lineposition.setter
+ def lineposition(self, val):
+ self["lineposition"] = val
+
+ @property
+ def shadow(self):
+ """
+ Sets the shape and color of the shadow behind text. "auto"
+ places minimal shadow and applies contrast text font color. See
+ https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow
+ for additional options.
+
+ The 'shadow' property is a string and must be specified as:
+ - A string
+ - A number that will be converted to a string
+
+ Returns
+ -------
+ str
+ """
+ return self["shadow"]
+
+ @shadow.setter
+ def shadow(self, val):
+ self["shadow"] = val
+
+ @property
+ def size(self):
+ """
+ The 'size' property is a number and may be specified as:
+ - An int or float in the interval [1, inf]
+
+ Returns
+ -------
+ int|float
+ """
+ return self["size"]
+
+ @size.setter
+ def size(self, val):
+ self["size"] = val
+
+ @property
+ def style(self):
+ """
+ Sets whether a font should be styled with a normal or italic
+ face from its family.
+
+ The 'style' property is an enumeration that may be specified as:
+ - One of the following enumeration values:
+ ['normal', 'italic']
+
+ Returns
+ -------
+ Any
+ """
+ return self["style"]
+
+ @style.setter
+ def style(self, val):
+ self["style"] = val
+
+ @property
+ def textcase(self):
+ """
+ Sets capitalization of text. It can be used to make text appear
+ in all-uppercase or all-lowercase, or with each word
+ capitalized.
+
+ The 'textcase' property is an enumeration that may be specified as:
+ - One of the following enumeration values:
+ ['normal', 'word caps', 'upper', 'lower']
+
+ Returns
+ -------
+ Any
+ """
+ return self["textcase"]
+
+ @textcase.setter
+ def textcase(self, val):
+ self["textcase"] = val
+
+ @property
+ def variant(self):
+ """
+ Sets the variant of the font.
+
+ The 'variant' property is an enumeration that may be specified as:
+ - One of the following enumeration values:
+ ['normal', 'small-caps', 'all-small-caps',
+ 'all-petite-caps', 'petite-caps', 'unicase']
+
+ Returns
+ -------
+ Any
+ """
+ return self["variant"]
+
+ @variant.setter
+ def variant(self, val):
+ self["variant"] = val
+
+ @property
+ def weight(self):
+ """
+ Sets the weight (or boldness) of the font.
+
+ The 'weight' property is a integer and may be specified as:
+ - An int (or float that will be cast to an int)
+ in the interval [1, 1000]
+ OR exactly one of ['normal', 'bold'] (e.g. 'bold')
+
+ Returns
+ -------
+ int
+ """
+ return self["weight"]
+
+ @weight.setter
+ def weight(self, val):
+ self["weight"] = val
+
+ @property
+ def _prop_descriptions(self):
+ return """\
+ color
+
+ family
+ HTML font family - the typeface that will be applied by
+ the web browser. The web browser can only apply a font
+ if it is available on the system where it runs. Provide
+ multiple font families, separated by commas, to
+ indicate the order in which to apply fonts if they
+ aren't available.
+ lineposition
+ Sets the kind of decoration line(s) with text, such as
+ an "under", "over" or "through" as well as combinations
+ e.g. "under+over", etc.
+ shadow
+ Sets the shape and color of the shadow behind text.
+ "auto" places minimal shadow and applies contrast text
+ font color. See https://developer.mozilla.org/en-
+ US/docs/Web/CSS/text-shadow for additional options.
+ size
+
+ style
+ Sets whether a font should be styled with a normal or
+ italic face from its family.
+ textcase
+ Sets capitalization of text. It can be used to make
+ text appear in all-uppercase or all-lowercase, or with
+ each word capitalized.
+ variant
+ Sets the variant of the font.
+ weight
+ Sets the weight (or boldness) of the font.
+ """
+
+ def __init__(
+ self,
+ arg=None,
+ color=None,
+ family=None,
+ lineposition=None,
+ shadow=None,
+ size=None,
+ style=None,
+ textcase=None,
+ variant=None,
+ weight=None,
+ **kwargs,
+ ):
+ """
+ Construct a new Textfont object
+
+ Sets the font for node labels
+
+ Parameters
+ ----------
+ arg
+ dict of properties compatible with this constructor or
+ an instance of
+ :class:`plotly.graph_objs.sankey.Textfont`
+ color
+
+ family
+ HTML font family - the typeface that will be applied by
+ the web browser. The web browser can only apply a font
+ if it is available on the system where it runs. Provide
+ multiple font families, separated by commas, to
+ indicate the order in which to apply fonts if they
+ aren't available.
+ lineposition
+ Sets the kind of decoration line(s) with text, such as
+ an "under", "over" or "through" as well as combinations
+ e.g. "under+over", etc.
+ shadow
+ Sets the shape and color of the shadow behind text.
+ "auto" places minimal shadow and applies contrast text
+ font color. See https://developer.mozilla.org/en-
+ US/docs/Web/CSS/text-shadow for additional options.
+ size
+
+ style
+ Sets whether a font should be styled with a normal or
+ italic face from its family.
+ textcase
+ Sets capitalization of text. It can be used to make
+ text appear in all-uppercase or all-lowercase, or with
+ each word capitalized.
+ variant
+ Sets the variant of the font.
+ weight
+ Sets the weight (or boldness) of the font.
+
+ Returns
+ -------
+ Textfont
+ """
+ super().__init__("textfont")
+ if "_parent" in kwargs:
+ self._parent = kwargs["_parent"]
+ return
+
+ if arg is None:
+ arg = {}
+ elif isinstance(arg, self.__class__):
+ arg = arg.to_plotly_json()
+ elif isinstance(arg, dict):
+ arg = _copy.copy(arg)
+ else:
+ raise ValueError("""\
+The first argument to the plotly.graph_objs.sankey.Textfont
+constructor must be a dict or
+an instance of :class:`plotly.graph_objs.sankey.Textfont`""")
+
+ self._skip_invalid = kwargs.pop("skip_invalid", False)
+ self._validate = kwargs.pop("_validate", True)
+
+ self._set_property("color", arg, color)
+ self._set_property("family", arg, family)
+ self._set_property("lineposition", arg, lineposition)
+ self._set_property("shadow", arg, shadow)
+ self._set_property("size", arg, size)
+ self._set_property("style", arg, style)
+ self._set_property("textcase", arg, textcase)
+ self._set_property("variant", arg, variant)
+ self._set_property("weight", arg, weight)
+ self._process_kwargs(**dict(arg, **kwargs))
+ self._skip_invalid = False
diff --git a/venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/hoverlabel/__init__.py b/venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/hoverlabel/__init__.py
new file mode 100644
index 0000000..56f600d
--- /dev/null
+++ b/venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/hoverlabel/__init__.py
@@ -0,0 +1,9 @@
+import sys
+from typing import TYPE_CHECKING
+
+if TYPE_CHECKING:
+ from ._font import Font
+else:
+ from _plotly_utils.importers import relative_import
+
+ __all__, __getattr__, __dir__ = relative_import(__name__, [], ["._font.Font"])
diff --git a/venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/hoverlabel/_font.py b/venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/hoverlabel/_font.py
new file mode 100644
index 0000000..3d9d60f
--- /dev/null
+++ b/venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/hoverlabel/_font.py
@@ -0,0 +1,587 @@
+# --- THIS FILE IS AUTO-GENERATED ---
+# Modifications will be overwitten the next time code generation run.
+
+from plotly.basedatatypes import BaseTraceHierarchyType as _BaseTraceHierarchyType
+import copy as _copy
+
+
+class Font(_BaseTraceHierarchyType):
+ _parent_path_str = "sankey.hoverlabel"
+ _path_str = "sankey.hoverlabel.font"
+ _valid_props = {
+ "color",
+ "colorsrc",
+ "family",
+ "familysrc",
+ "lineposition",
+ "linepositionsrc",
+ "shadow",
+ "shadowsrc",
+ "size",
+ "sizesrc",
+ "style",
+ "stylesrc",
+ "textcase",
+ "textcasesrc",
+ "variant",
+ "variantsrc",
+ "weight",
+ "weightsrc",
+ }
+
+ @property
+ def color(self):
+ """
+ The 'color' property is a color and may be specified as:
+ - A hex string (e.g. '#ff0000')
+ - An rgb/rgba string (e.g. 'rgb(255,0,0)')
+ - An hsl/hsla string (e.g. 'hsl(0,100%,50%)')
+ - An hsv/hsva string (e.g. 'hsv(0,100%,100%)')
+ - A named CSS color: see https://plotly.com/python/css-colors/ for a list
+ - A list or array of any of the above
+
+ Returns
+ -------
+ str|numpy.ndarray
+ """
+ return self["color"]
+
+ @color.setter
+ def color(self, val):
+ self["color"] = val
+
+ @property
+ def colorsrc(self):
+ """
+ Sets the source reference on Chart Studio Cloud for `color`.
+
+ The 'colorsrc' property must be specified as a string or
+ as a plotly.grid_objs.Column object
+
+ Returns
+ -------
+ str
+ """
+ return self["colorsrc"]
+
+ @colorsrc.setter
+ def colorsrc(self, val):
+ self["colorsrc"] = val
+
+ @property
+ def family(self):
+ """
+ HTML font family - the typeface that will be applied by the web
+ browser. The web browser can only apply a font if it is
+ available on the system where it runs. Provide multiple font
+ families, separated by commas, to indicate the order in which
+ to apply fonts if they aren't available.
+
+ The 'family' property is a string and must be specified as:
+ - A non-empty string
+ - A tuple, list, or one-dimensional numpy array of the above
+
+ Returns
+ -------
+ str|numpy.ndarray
+ """
+ return self["family"]
+
+ @family.setter
+ def family(self, val):
+ self["family"] = val
+
+ @property
+ def familysrc(self):
+ """
+ Sets the source reference on Chart Studio Cloud for `family`.
+
+ The 'familysrc' property must be specified as a string or
+ as a plotly.grid_objs.Column object
+
+ Returns
+ -------
+ str
+ """
+ return self["familysrc"]
+
+ @familysrc.setter
+ def familysrc(self, val):
+ self["familysrc"] = val
+
+ @property
+ def lineposition(self):
+ """
+ Sets the kind of decoration line(s) with text, such as an
+ "under", "over" or "through" as well as combinations e.g.
+ "under+over", etc.
+
+ The 'lineposition' property is a flaglist and may be specified
+ as a string containing:
+ - Any combination of ['under', 'over', 'through'] joined with '+' characters
+ (e.g. 'under+over')
+ OR exactly one of ['none'] (e.g. 'none')
+ - A list or array of the above
+
+ Returns
+ -------
+ Any|numpy.ndarray
+ """
+ return self["lineposition"]
+
+ @lineposition.setter
+ def lineposition(self, val):
+ self["lineposition"] = val
+
+ @property
+ def linepositionsrc(self):
+ """
+ Sets the source reference on Chart Studio Cloud for
+ `lineposition`.
+
+ The 'linepositionsrc' property must be specified as a string or
+ as a plotly.grid_objs.Column object
+
+ Returns
+ -------
+ str
+ """
+ return self["linepositionsrc"]
+
+ @linepositionsrc.setter
+ def linepositionsrc(self, val):
+ self["linepositionsrc"] = val
+
+ @property
+ def shadow(self):
+ """
+ Sets the shape and color of the shadow behind text. "auto"
+ places minimal shadow and applies contrast text font color. See
+ https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow
+ for additional options.
+
+ The 'shadow' property is a string and must be specified as:
+ - A string
+ - A number that will be converted to a string
+ - A tuple, list, or one-dimensional numpy array of the above
+
+ Returns
+ -------
+ str|numpy.ndarray
+ """
+ return self["shadow"]
+
+ @shadow.setter
+ def shadow(self, val):
+ self["shadow"] = val
+
+ @property
+ def shadowsrc(self):
+ """
+ Sets the source reference on Chart Studio Cloud for `shadow`.
+
+ The 'shadowsrc' property must be specified as a string or
+ as a plotly.grid_objs.Column object
+
+ Returns
+ -------
+ str
+ """
+ return self["shadowsrc"]
+
+ @shadowsrc.setter
+ def shadowsrc(self, val):
+ self["shadowsrc"] = val
+
+ @property
+ def size(self):
+ """
+ The 'size' property is a number and may be specified as:
+ - An int or float in the interval [1, inf]
+ - A tuple, list, or one-dimensional numpy array of the above
+
+ Returns
+ -------
+ int|float|numpy.ndarray
+ """
+ return self["size"]
+
+ @size.setter
+ def size(self, val):
+ self["size"] = val
+
+ @property
+ def sizesrc(self):
+ """
+ Sets the source reference on Chart Studio Cloud for `size`.
+
+ The 'sizesrc' property must be specified as a string or
+ as a plotly.grid_objs.Column object
+
+ Returns
+ -------
+ str
+ """
+ return self["sizesrc"]
+
+ @sizesrc.setter
+ def sizesrc(self, val):
+ self["sizesrc"] = val
+
+ @property
+ def style(self):
+ """
+ Sets whether a font should be styled with a normal or italic
+ face from its family.
+
+ The 'style' property is an enumeration that may be specified as:
+ - One of the following enumeration values:
+ ['normal', 'italic']
+ - A tuple, list, or one-dimensional numpy array of the above
+
+ Returns
+ -------
+ Any|numpy.ndarray
+ """
+ return self["style"]
+
+ @style.setter
+ def style(self, val):
+ self["style"] = val
+
+ @property
+ def stylesrc(self):
+ """
+ Sets the source reference on Chart Studio Cloud for `style`.
+
+ The 'stylesrc' property must be specified as a string or
+ as a plotly.grid_objs.Column object
+
+ Returns
+ -------
+ str
+ """
+ return self["stylesrc"]
+
+ @stylesrc.setter
+ def stylesrc(self, val):
+ self["stylesrc"] = val
+
+ @property
+ def textcase(self):
+ """
+ Sets capitalization of text. It can be used to make text appear
+ in all-uppercase or all-lowercase, or with each word
+ capitalized.
+
+ The 'textcase' property is an enumeration that may be specified as:
+ - One of the following enumeration values:
+ ['normal', 'word caps', 'upper', 'lower']
+ - A tuple, list, or one-dimensional numpy array of the above
+
+ Returns
+ -------
+ Any|numpy.ndarray
+ """
+ return self["textcase"]
+
+ @textcase.setter
+ def textcase(self, val):
+ self["textcase"] = val
+
+ @property
+ def textcasesrc(self):
+ """
+ Sets the source reference on Chart Studio Cloud for `textcase`.
+
+ The 'textcasesrc' property must be specified as a string or
+ as a plotly.grid_objs.Column object
+
+ Returns
+ -------
+ str
+ """
+ return self["textcasesrc"]
+
+ @textcasesrc.setter
+ def textcasesrc(self, val):
+ self["textcasesrc"] = val
+
+ @property
+ def variant(self):
+ """
+ Sets the variant of the font.
+
+ The 'variant' property is an enumeration that may be specified as:
+ - One of the following enumeration values:
+ ['normal', 'small-caps', 'all-small-caps',
+ 'all-petite-caps', 'petite-caps', 'unicase']
+ - A tuple, list, or one-dimensional numpy array of the above
+
+ Returns
+ -------
+ Any|numpy.ndarray
+ """
+ return self["variant"]
+
+ @variant.setter
+ def variant(self, val):
+ self["variant"] = val
+
+ @property
+ def variantsrc(self):
+ """
+ Sets the source reference on Chart Studio Cloud for `variant`.
+
+ The 'variantsrc' property must be specified as a string or
+ as a plotly.grid_objs.Column object
+
+ Returns
+ -------
+ str
+ """
+ return self["variantsrc"]
+
+ @variantsrc.setter
+ def variantsrc(self, val):
+ self["variantsrc"] = val
+
+ @property
+ def weight(self):
+ """
+ Sets the weight (or boldness) of the font.
+
+ The 'weight' property is a integer and may be specified as:
+ - An int (or float that will be cast to an int)
+ in the interval [1, 1000]
+ OR exactly one of ['normal', 'bold'] (e.g. 'bold')
+ - A tuple, list, or one-dimensional numpy array of the above
+
+ Returns
+ -------
+ int|numpy.ndarray
+ """
+ return self["weight"]
+
+ @weight.setter
+ def weight(self, val):
+ self["weight"] = val
+
+ @property
+ def weightsrc(self):
+ """
+ Sets the source reference on Chart Studio Cloud for `weight`.
+
+ The 'weightsrc' property must be specified as a string or
+ as a plotly.grid_objs.Column object
+
+ Returns
+ -------
+ str
+ """
+ return self["weightsrc"]
+
+ @weightsrc.setter
+ def weightsrc(self, val):
+ self["weightsrc"] = val
+
+ @property
+ def _prop_descriptions(self):
+ return """\
+ color
+
+ colorsrc
+ Sets the source reference on Chart Studio Cloud for
+ `color`.
+ family
+ HTML font family - the typeface that will be applied by
+ the web browser. The web browser can only apply a font
+ if it is available on the system where it runs. Provide
+ multiple font families, separated by commas, to
+ indicate the order in which to apply fonts if they
+ aren't available.
+ familysrc
+ Sets the source reference on Chart Studio Cloud for
+ `family`.
+ lineposition
+ Sets the kind of decoration line(s) with text, such as
+ an "under", "over" or "through" as well as combinations
+ e.g. "under+over", etc.
+ linepositionsrc
+ Sets the source reference on Chart Studio Cloud for
+ `lineposition`.
+ shadow
+ Sets the shape and color of the shadow behind text.
+ "auto" places minimal shadow and applies contrast text
+ font color. See https://developer.mozilla.org/en-
+ US/docs/Web/CSS/text-shadow for additional options.
+ shadowsrc
+ Sets the source reference on Chart Studio Cloud for
+ `shadow`.
+ size
+
+ sizesrc
+ Sets the source reference on Chart Studio Cloud for
+ `size`.
+ style
+ Sets whether a font should be styled with a normal or
+ italic face from its family.
+ stylesrc
+ Sets the source reference on Chart Studio Cloud for
+ `style`.
+ textcase
+ Sets capitalization of text. It can be used to make
+ text appear in all-uppercase or all-lowercase, or with
+ each word capitalized.
+ textcasesrc
+ Sets the source reference on Chart Studio Cloud for
+ `textcase`.
+ variant
+ Sets the variant of the font.
+ variantsrc
+ Sets the source reference on Chart Studio Cloud for
+ `variant`.
+ weight
+ Sets the weight (or boldness) of the font.
+ weightsrc
+ Sets the source reference on Chart Studio Cloud for
+ `weight`.
+ """
+
+ def __init__(
+ self,
+ arg=None,
+ color=None,
+ colorsrc=None,
+ family=None,
+ familysrc=None,
+ lineposition=None,
+ linepositionsrc=None,
+ shadow=None,
+ shadowsrc=None,
+ size=None,
+ sizesrc=None,
+ style=None,
+ stylesrc=None,
+ textcase=None,
+ textcasesrc=None,
+ variant=None,
+ variantsrc=None,
+ weight=None,
+ weightsrc=None,
+ **kwargs,
+ ):
+ """
+ Construct a new Font object
+
+ Sets the font used in hover labels.
+
+ Parameters
+ ----------
+ arg
+ dict of properties compatible with this constructor or
+ an instance of
+ :class:`plotly.graph_objs.sankey.hoverlabel.Font`
+ color
+
+ colorsrc
+ Sets the source reference on Chart Studio Cloud for
+ `color`.
+ family
+ HTML font family - the typeface that will be applied by
+ the web browser. The web browser can only apply a font
+ if it is available on the system where it runs. Provide
+ multiple font families, separated by commas, to
+ indicate the order in which to apply fonts if they
+ aren't available.
+ familysrc
+ Sets the source reference on Chart Studio Cloud for
+ `family`.
+ lineposition
+ Sets the kind of decoration line(s) with text, such as
+ an "under", "over" or "through" as well as combinations
+ e.g. "under+over", etc.
+ linepositionsrc
+ Sets the source reference on Chart Studio Cloud for
+ `lineposition`.
+ shadow
+ Sets the shape and color of the shadow behind text.
+ "auto" places minimal shadow and applies contrast text
+ font color. See https://developer.mozilla.org/en-
+ US/docs/Web/CSS/text-shadow for additional options.
+ shadowsrc
+ Sets the source reference on Chart Studio Cloud for
+ `shadow`.
+ size
+
+ sizesrc
+ Sets the source reference on Chart Studio Cloud for
+ `size`.
+ style
+ Sets whether a font should be styled with a normal or
+ italic face from its family.
+ stylesrc
+ Sets the source reference on Chart Studio Cloud for
+ `style`.
+ textcase
+ Sets capitalization of text. It can be used to make
+ text appear in all-uppercase or all-lowercase, or with
+ each word capitalized.
+ textcasesrc
+ Sets the source reference on Chart Studio Cloud for
+ `textcase`.
+ variant
+ Sets the variant of the font.
+ variantsrc
+ Sets the source reference on Chart Studio Cloud for
+ `variant`.
+ weight
+ Sets the weight (or boldness) of the font.
+ weightsrc
+ Sets the source reference on Chart Studio Cloud for
+ `weight`.
+
+ Returns
+ -------
+ Font
+ """
+ super().__init__("font")
+ if "_parent" in kwargs:
+ self._parent = kwargs["_parent"]
+ return
+
+ if arg is None:
+ arg = {}
+ elif isinstance(arg, self.__class__):
+ arg = arg.to_plotly_json()
+ elif isinstance(arg, dict):
+ arg = _copy.copy(arg)
+ else:
+ raise ValueError("""\
+The first argument to the plotly.graph_objs.sankey.hoverlabel.Font
+constructor must be a dict or
+an instance of :class:`plotly.graph_objs.sankey.hoverlabel.Font`""")
+
+ self._skip_invalid = kwargs.pop("skip_invalid", False)
+ self._validate = kwargs.pop("_validate", True)
+
+ self._set_property("color", arg, color)
+ self._set_property("colorsrc", arg, colorsrc)
+ self._set_property("family", arg, family)
+ self._set_property("familysrc", arg, familysrc)
+ self._set_property("lineposition", arg, lineposition)
+ self._set_property("linepositionsrc", arg, linepositionsrc)
+ self._set_property("shadow", arg, shadow)
+ self._set_property("shadowsrc", arg, shadowsrc)
+ self._set_property("size", arg, size)
+ self._set_property("sizesrc", arg, sizesrc)
+ self._set_property("style", arg, style)
+ self._set_property("stylesrc", arg, stylesrc)
+ self._set_property("textcase", arg, textcase)
+ self._set_property("textcasesrc", arg, textcasesrc)
+ self._set_property("variant", arg, variant)
+ self._set_property("variantsrc", arg, variantsrc)
+ self._set_property("weight", arg, weight)
+ self._set_property("weightsrc", arg, weightsrc)
+ self._process_kwargs(**dict(arg, **kwargs))
+ self._skip_invalid = False
diff --git a/venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/legendgrouptitle/__init__.py b/venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/legendgrouptitle/__init__.py
new file mode 100644
index 0000000..56f600d
--- /dev/null
+++ b/venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/legendgrouptitle/__init__.py
@@ -0,0 +1,9 @@
+import sys
+from typing import TYPE_CHECKING
+
+if TYPE_CHECKING:
+ from ._font import Font
+else:
+ from _plotly_utils.importers import relative_import
+
+ __all__, __getattr__, __dir__ = relative_import(__name__, [], ["._font.Font"])
diff --git a/venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/legendgrouptitle/_font.py b/venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/legendgrouptitle/_font.py
new file mode 100644
index 0000000..2887958
--- /dev/null
+++ b/venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/legendgrouptitle/_font.py
@@ -0,0 +1,334 @@
+# --- THIS FILE IS AUTO-GENERATED ---
+# Modifications will be overwitten the next time code generation run.
+
+from plotly.basedatatypes import BaseTraceHierarchyType as _BaseTraceHierarchyType
+import copy as _copy
+
+
+class Font(_BaseTraceHierarchyType):
+ _parent_path_str = "sankey.legendgrouptitle"
+ _path_str = "sankey.legendgrouptitle.font"
+ _valid_props = {
+ "color",
+ "family",
+ "lineposition",
+ "shadow",
+ "size",
+ "style",
+ "textcase",
+ "variant",
+ "weight",
+ }
+
+ @property
+ def color(self):
+ """
+ The 'color' property is a color and may be specified as:
+ - A hex string (e.g. '#ff0000')
+ - An rgb/rgba string (e.g. 'rgb(255,0,0)')
+ - An hsl/hsla string (e.g. 'hsl(0,100%,50%)')
+ - An hsv/hsva string (e.g. 'hsv(0,100%,100%)')
+ - A named CSS color: see https://plotly.com/python/css-colors/ for a list
+
+ Returns
+ -------
+ str
+ """
+ return self["color"]
+
+ @color.setter
+ def color(self, val):
+ self["color"] = val
+
+ @property
+ def family(self):
+ """
+ HTML font family - the typeface that will be applied by the web
+ browser. The web browser can only apply a font if it is
+ available on the system where it runs. Provide multiple font
+ families, separated by commas, to indicate the order in which
+ to apply fonts if they aren't available.
+
+ The 'family' property is a string and must be specified as:
+ - A non-empty string
+
+ Returns
+ -------
+ str
+ """
+ return self["family"]
+
+ @family.setter
+ def family(self, val):
+ self["family"] = val
+
+ @property
+ def lineposition(self):
+ """
+ Sets the kind of decoration line(s) with text, such as an
+ "under", "over" or "through" as well as combinations e.g.
+ "under+over", etc.
+
+ The 'lineposition' property is a flaglist and may be specified
+ as a string containing:
+ - Any combination of ['under', 'over', 'through'] joined with '+' characters
+ (e.g. 'under+over')
+ OR exactly one of ['none'] (e.g. 'none')
+
+ Returns
+ -------
+ Any
+ """
+ return self["lineposition"]
+
+ @lineposition.setter
+ def lineposition(self, val):
+ self["lineposition"] = val
+
+ @property
+ def shadow(self):
+ """
+ Sets the shape and color of the shadow behind text. "auto"
+ places minimal shadow and applies contrast text font color. See
+ https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow
+ for additional options.
+
+ The 'shadow' property is a string and must be specified as:
+ - A string
+ - A number that will be converted to a string
+
+ Returns
+ -------
+ str
+ """
+ return self["shadow"]
+
+ @shadow.setter
+ def shadow(self, val):
+ self["shadow"] = val
+
+ @property
+ def size(self):
+ """
+ The 'size' property is a number and may be specified as:
+ - An int or float in the interval [1, inf]
+
+ Returns
+ -------
+ int|float
+ """
+ return self["size"]
+
+ @size.setter
+ def size(self, val):
+ self["size"] = val
+
+ @property
+ def style(self):
+ """
+ Sets whether a font should be styled with a normal or italic
+ face from its family.
+
+ The 'style' property is an enumeration that may be specified as:
+ - One of the following enumeration values:
+ ['normal', 'italic']
+
+ Returns
+ -------
+ Any
+ """
+ return self["style"]
+
+ @style.setter
+ def style(self, val):
+ self["style"] = val
+
+ @property
+ def textcase(self):
+ """
+ Sets capitalization of text. It can be used to make text appear
+ in all-uppercase or all-lowercase, or with each word
+ capitalized.
+
+ The 'textcase' property is an enumeration that may be specified as:
+ - One of the following enumeration values:
+ ['normal', 'word caps', 'upper', 'lower']
+
+ Returns
+ -------
+ Any
+ """
+ return self["textcase"]
+
+ @textcase.setter
+ def textcase(self, val):
+ self["textcase"] = val
+
+ @property
+ def variant(self):
+ """
+ Sets the variant of the font.
+
+ The 'variant' property is an enumeration that may be specified as:
+ - One of the following enumeration values:
+ ['normal', 'small-caps', 'all-small-caps',
+ 'all-petite-caps', 'petite-caps', 'unicase']
+
+ Returns
+ -------
+ Any
+ """
+ return self["variant"]
+
+ @variant.setter
+ def variant(self, val):
+ self["variant"] = val
+
+ @property
+ def weight(self):
+ """
+ Sets the weight (or boldness) of the font.
+
+ The 'weight' property is a integer and may be specified as:
+ - An int (or float that will be cast to an int)
+ in the interval [1, 1000]
+ OR exactly one of ['normal', 'bold'] (e.g. 'bold')
+
+ Returns
+ -------
+ int
+ """
+ return self["weight"]
+
+ @weight.setter
+ def weight(self, val):
+ self["weight"] = val
+
+ @property
+ def _prop_descriptions(self):
+ return """\
+ color
+
+ family
+ HTML font family - the typeface that will be applied by
+ the web browser. The web browser can only apply a font
+ if it is available on the system where it runs. Provide
+ multiple font families, separated by commas, to
+ indicate the order in which to apply fonts if they
+ aren't available.
+ lineposition
+ Sets the kind of decoration line(s) with text, such as
+ an "under", "over" or "through" as well as combinations
+ e.g. "under+over", etc.
+ shadow
+ Sets the shape and color of the shadow behind text.
+ "auto" places minimal shadow and applies contrast text
+ font color. See https://developer.mozilla.org/en-
+ US/docs/Web/CSS/text-shadow for additional options.
+ size
+
+ style
+ Sets whether a font should be styled with a normal or
+ italic face from its family.
+ textcase
+ Sets capitalization of text. It can be used to make
+ text appear in all-uppercase or all-lowercase, or with
+ each word capitalized.
+ variant
+ Sets the variant of the font.
+ weight
+ Sets the weight (or boldness) of the font.
+ """
+
+ def __init__(
+ self,
+ arg=None,
+ color=None,
+ family=None,
+ lineposition=None,
+ shadow=None,
+ size=None,
+ style=None,
+ textcase=None,
+ variant=None,
+ weight=None,
+ **kwargs,
+ ):
+ """
+ Construct a new Font object
+
+ Sets this legend group's title font.
+
+ Parameters
+ ----------
+ arg
+ dict of properties compatible with this constructor or
+ an instance of
+ :class:`plotly.graph_objs.sankey.legendgrouptitle.Font`
+ color
+
+ family
+ HTML font family - the typeface that will be applied by
+ the web browser. The web browser can only apply a font
+ if it is available on the system where it runs. Provide
+ multiple font families, separated by commas, to
+ indicate the order in which to apply fonts if they
+ aren't available.
+ lineposition
+ Sets the kind of decoration line(s) with text, such as
+ an "under", "over" or "through" as well as combinations
+ e.g. "under+over", etc.
+ shadow
+ Sets the shape and color of the shadow behind text.
+ "auto" places minimal shadow and applies contrast text
+ font color. See https://developer.mozilla.org/en-
+ US/docs/Web/CSS/text-shadow for additional options.
+ size
+
+ style
+ Sets whether a font should be styled with a normal or
+ italic face from its family.
+ textcase
+ Sets capitalization of text. It can be used to make
+ text appear in all-uppercase or all-lowercase, or with
+ each word capitalized.
+ variant
+ Sets the variant of the font.
+ weight
+ Sets the weight (or boldness) of the font.
+
+ Returns
+ -------
+ Font
+ """
+ super().__init__("font")
+ if "_parent" in kwargs:
+ self._parent = kwargs["_parent"]
+ return
+
+ if arg is None:
+ arg = {}
+ elif isinstance(arg, self.__class__):
+ arg = arg.to_plotly_json()
+ elif isinstance(arg, dict):
+ arg = _copy.copy(arg)
+ else:
+ raise ValueError("""\
+The first argument to the plotly.graph_objs.sankey.legendgrouptitle.Font
+constructor must be a dict or
+an instance of :class:`plotly.graph_objs.sankey.legendgrouptitle.Font`""")
+
+ self._skip_invalid = kwargs.pop("skip_invalid", False)
+ self._validate = kwargs.pop("_validate", True)
+
+ self._set_property("color", arg, color)
+ self._set_property("family", arg, family)
+ self._set_property("lineposition", arg, lineposition)
+ self._set_property("shadow", arg, shadow)
+ self._set_property("size", arg, size)
+ self._set_property("style", arg, style)
+ self._set_property("textcase", arg, textcase)
+ self._set_property("variant", arg, variant)
+ self._set_property("weight", arg, weight)
+ self._process_kwargs(**dict(arg, **kwargs))
+ self._skip_invalid = False
diff --git a/venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/link/__init__.py b/venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/link/__init__.py
new file mode 100644
index 0000000..7170211
--- /dev/null
+++ b/venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/link/__init__.py
@@ -0,0 +1,16 @@
+import sys
+from typing import TYPE_CHECKING
+
+if TYPE_CHECKING:
+ from ._colorscale import Colorscale
+ from ._hoverlabel import Hoverlabel
+ from ._line import Line
+ from . import hoverlabel
+else:
+ from _plotly_utils.importers import relative_import
+
+ __all__, __getattr__, __dir__ = relative_import(
+ __name__,
+ [".hoverlabel"],
+ ["._colorscale.Colorscale", "._hoverlabel.Hoverlabel", "._line.Line"],
+ )
diff --git a/venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/link/_colorscale.py b/venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/link/_colorscale.py
new file mode 100644
index 0000000..61d0934
--- /dev/null
+++ b/venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/link/_colorscale.py
@@ -0,0 +1,304 @@
+# --- THIS FILE IS AUTO-GENERATED ---
+# Modifications will be overwitten the next time code generation run.
+
+from plotly.basedatatypes import BaseTraceHierarchyType as _BaseTraceHierarchyType
+import copy as _copy
+
+
+class Colorscale(_BaseTraceHierarchyType):
+ _parent_path_str = "sankey.link"
+ _path_str = "sankey.link.colorscale"
+ _valid_props = {"cmax", "cmin", "colorscale", "label", "name", "templateitemname"}
+
+ @property
+ def cmax(self):
+ """
+ Sets the upper bound of the color domain.
+
+ The 'cmax' property is a number and may be specified as:
+ - An int or float
+
+ Returns
+ -------
+ int|float
+ """
+ return self["cmax"]
+
+ @cmax.setter
+ def cmax(self, val):
+ self["cmax"] = val
+
+ @property
+ def cmin(self):
+ """
+ Sets the lower bound of the color domain.
+
+ The 'cmin' property is a number and may be specified as:
+ - An int or float
+
+ Returns
+ -------
+ int|float
+ """
+ return self["cmin"]
+
+ @cmin.setter
+ def cmin(self, val):
+ self["cmin"] = val
+
+ @property
+ def colorscale(self):
+ """
+ Sets the colorscale. The colorscale must be an array containing
+ arrays mapping a normalized value to an rgb, rgba, hex, hsl,
+ hsv, or named color string. At minimum, a mapping for the
+ lowest (0) and highest (1) values are required. For example,
+ `[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]`. To control the
+ bounds of the colorscale in color space, use `cmin` and `cmax`.
+ Alternatively, `colorscale` may be a palette name string of the
+ following list: Blackbody,Bluered,Blues,Cividis,Earth,Electric,
+ Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,
+ YlGnBu,YlOrRd.
+
+ The 'colorscale' property is a colorscale and may be
+ specified as:
+ - A list of colors that will be spaced evenly to create the colorscale.
+ Many predefined colorscale lists are included in the sequential, diverging,
+ and cyclical modules in the plotly.colors package.
+ - A list of 2-element lists where the first element is the
+ normalized color level value (starting at 0 and ending at 1),
+ and the second item is a valid color string.
+ (e.g. [[0, 'green'], [0.5, 'red'], [1.0, 'rgb(0, 0, 255)']])
+ - One of the following named colorscales:
+ ['aggrnyl', 'agsunset', 'algae', 'amp', 'armyrose', 'balance',
+ 'blackbody', 'bluered', 'blues', 'blugrn', 'bluyl', 'brbg',
+ 'brwnyl', 'bugn', 'bupu', 'burg', 'burgyl', 'cividis', 'curl',
+ 'darkmint', 'deep', 'delta', 'dense', 'earth', 'edge', 'electric',
+ 'emrld', 'fall', 'geyser', 'gnbu', 'gray', 'greens', 'greys',
+ 'haline', 'hot', 'hsv', 'ice', 'icefire', 'inferno', 'jet',
+ 'magenta', 'magma', 'matter', 'mint', 'mrybm', 'mygbm', 'oranges',
+ 'orrd', 'oryel', 'oxy', 'peach', 'phase', 'picnic', 'pinkyl',
+ 'piyg', 'plasma', 'plotly3', 'portland', 'prgn', 'pubu', 'pubugn',
+ 'puor', 'purd', 'purp', 'purples', 'purpor', 'rainbow', 'rdbu',
+ 'rdgy', 'rdpu', 'rdylbu', 'rdylgn', 'redor', 'reds', 'solar',
+ 'spectral', 'speed', 'sunset', 'sunsetdark', 'teal', 'tealgrn',
+ 'tealrose', 'tempo', 'temps', 'thermal', 'tropic', 'turbid',
+ 'turbo', 'twilight', 'viridis', 'ylgn', 'ylgnbu', 'ylorbr',
+ 'ylorrd'].
+ Appending '_r' to a named colorscale reverses it.
+
+ Returns
+ -------
+ str
+ """
+ return self["colorscale"]
+
+ @colorscale.setter
+ def colorscale(self, val):
+ self["colorscale"] = val
+
+ @property
+ def label(self):
+ """
+ The label of the links to color based on their concentration
+ within a flow.
+
+ The 'label' property is a string and must be specified as:
+ - A string
+ - A number that will be converted to a string
+
+ Returns
+ -------
+ str
+ """
+ return self["label"]
+
+ @label.setter
+ def label(self, val):
+ self["label"] = val
+
+ @property
+ def name(self):
+ """
+ When used in a template, named items are created in the output
+ figure in addition to any items the figure already has in this
+ array. You can modify these items in the output figure by
+ making your own item with `templateitemname` matching this
+ `name` alongside your modifications (including `visible: false`
+ or `enabled: false` to hide it). Has no effect outside of a
+ template.
+
+ The 'name' property is a string and must be specified as:
+ - A string
+ - A number that will be converted to a string
+
+ Returns
+ -------
+ str
+ """
+ return self["name"]
+
+ @name.setter
+ def name(self, val):
+ self["name"] = val
+
+ @property
+ def templateitemname(self):
+ """
+ Used to refer to a named item in this array in the template.
+ Named items from the template will be created even without a
+ matching item in the input figure, but you can modify one by
+ making an item with `templateitemname` matching its `name`,
+ alongside your modifications (including `visible: false` or
+ `enabled: false` to hide it). If there is no template or no
+ matching item, this item will be hidden unless you explicitly
+ show it with `visible: true`.
+
+ The 'templateitemname' property is a string and must be specified as:
+ - A string
+ - A number that will be converted to a string
+
+ Returns
+ -------
+ str
+ """
+ return self["templateitemname"]
+
+ @templateitemname.setter
+ def templateitemname(self, val):
+ self["templateitemname"] = val
+
+ @property
+ def _prop_descriptions(self):
+ return """\
+ cmax
+ Sets the upper bound of the color domain.
+ cmin
+ Sets the lower bound of the color domain.
+ colorscale
+ Sets the colorscale. The colorscale must be an array
+ containing arrays mapping a normalized value to an rgb,
+ rgba, hex, hsl, hsv, or named color string. At minimum,
+ a mapping for the lowest (0) and highest (1) values are
+ required. For example, `[[0, 'rgb(0,0,255)'], [1,
+ 'rgb(255,0,0)']]`. To control the bounds of the
+ colorscale in color space, use `cmin` and `cmax`.
+ Alternatively, `colorscale` may be a palette name
+ string of the following list: Blackbody,Bluered,Blues,C
+ ividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portl
+ and,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.
+ label
+ The label of the links to color based on their
+ concentration within a flow.
+ name
+ When used in a template, named items are created in the
+ output figure in addition to any items the figure
+ already has in this array. You can modify these items
+ in the output figure by making your own item with
+ `templateitemname` matching this `name` alongside your
+ modifications (including `visible: false` or `enabled:
+ false` to hide it). Has no effect outside of a
+ template.
+ templateitemname
+ Used to refer to a named item in this array in the
+ template. Named items from the template will be created
+ even without a matching item in the input figure, but
+ you can modify one by making an item with
+ `templateitemname` matching its `name`, alongside your
+ modifications (including `visible: false` or `enabled:
+ false` to hide it). If there is no template or no
+ matching item, this item will be hidden unless you
+ explicitly show it with `visible: true`.
+ """
+
+ def __init__(
+ self,
+ arg=None,
+ cmax=None,
+ cmin=None,
+ colorscale=None,
+ label=None,
+ name=None,
+ templateitemname=None,
+ **kwargs,
+ ):
+ """
+ Construct a new Colorscale object
+
+ Parameters
+ ----------
+ arg
+ dict of properties compatible with this constructor or
+ an instance of
+ :class:`plotly.graph_objs.sankey.link.Colorscale`
+ cmax
+ Sets the upper bound of the color domain.
+ cmin
+ Sets the lower bound of the color domain.
+ colorscale
+ Sets the colorscale. The colorscale must be an array
+ containing arrays mapping a normalized value to an rgb,
+ rgba, hex, hsl, hsv, or named color string. At minimum,
+ a mapping for the lowest (0) and highest (1) values are
+ required. For example, `[[0, 'rgb(0,0,255)'], [1,
+ 'rgb(255,0,0)']]`. To control the bounds of the
+ colorscale in color space, use `cmin` and `cmax`.
+ Alternatively, `colorscale` may be a palette name
+ string of the following list: Blackbody,Bluered,Blues,C
+ ividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portl
+ and,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.
+ label
+ The label of the links to color based on their
+ concentration within a flow.
+ name
+ When used in a template, named items are created in the
+ output figure in addition to any items the figure
+ already has in this array. You can modify these items
+ in the output figure by making your own item with
+ `templateitemname` matching this `name` alongside your
+ modifications (including `visible: false` or `enabled:
+ false` to hide it). Has no effect outside of a
+ template.
+ templateitemname
+ Used to refer to a named item in this array in the
+ template. Named items from the template will be created
+ even without a matching item in the input figure, but
+ you can modify one by making an item with
+ `templateitemname` matching its `name`, alongside your
+ modifications (including `visible: false` or `enabled:
+ false` to hide it). If there is no template or no
+ matching item, this item will be hidden unless you
+ explicitly show it with `visible: true`.
+
+ Returns
+ -------
+ Colorscale
+ """
+ super().__init__("colorscales")
+ if "_parent" in kwargs:
+ self._parent = kwargs["_parent"]
+ return
+
+ if arg is None:
+ arg = {}
+ elif isinstance(arg, self.__class__):
+ arg = arg.to_plotly_json()
+ elif isinstance(arg, dict):
+ arg = _copy.copy(arg)
+ else:
+ raise ValueError("""\
+The first argument to the plotly.graph_objs.sankey.link.Colorscale
+constructor must be a dict or
+an instance of :class:`plotly.graph_objs.sankey.link.Colorscale`""")
+
+ self._skip_invalid = kwargs.pop("skip_invalid", False)
+ self._validate = kwargs.pop("_validate", True)
+
+ self._set_property("cmax", arg, cmax)
+ self._set_property("cmin", arg, cmin)
+ self._set_property("colorscale", arg, colorscale)
+ self._set_property("label", arg, label)
+ self._set_property("name", arg, name)
+ self._set_property("templateitemname", arg, templateitemname)
+ self._process_kwargs(**dict(arg, **kwargs))
+ self._skip_invalid = False
diff --git a/venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/link/_hoverlabel.py b/venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/link/_hoverlabel.py
new file mode 100644
index 0000000..e5684a2
--- /dev/null
+++ b/venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/link/_hoverlabel.py
@@ -0,0 +1,338 @@
+# --- THIS FILE IS AUTO-GENERATED ---
+# Modifications will be overwitten the next time code generation run.
+
+from plotly.basedatatypes import BaseTraceHierarchyType as _BaseTraceHierarchyType
+import copy as _copy
+
+
+class Hoverlabel(_BaseTraceHierarchyType):
+ _parent_path_str = "sankey.link"
+ _path_str = "sankey.link.hoverlabel"
+ _valid_props = {
+ "align",
+ "alignsrc",
+ "bgcolor",
+ "bgcolorsrc",
+ "bordercolor",
+ "bordercolorsrc",
+ "font",
+ "namelength",
+ "namelengthsrc",
+ }
+
+ @property
+ def align(self):
+ """
+ Sets the horizontal alignment of the text content within hover
+ label box. Has an effect only if the hover label text spans
+ more two or more lines
+
+ The 'align' property is an enumeration that may be specified as:
+ - One of the following enumeration values:
+ ['left', 'right', 'auto']
+ - A tuple, list, or one-dimensional numpy array of the above
+
+ Returns
+ -------
+ Any|numpy.ndarray
+ """
+ return self["align"]
+
+ @align.setter
+ def align(self, val):
+ self["align"] = val
+
+ @property
+ def alignsrc(self):
+ """
+ Sets the source reference on Chart Studio Cloud for `align`.
+
+ The 'alignsrc' property must be specified as a string or
+ as a plotly.grid_objs.Column object
+
+ Returns
+ -------
+ str
+ """
+ return self["alignsrc"]
+
+ @alignsrc.setter
+ def alignsrc(self, val):
+ self["alignsrc"] = val
+
+ @property
+ def bgcolor(self):
+ """
+ Sets the background color of the hover labels for this trace
+
+ The 'bgcolor' property is a color and may be specified as:
+ - A hex string (e.g. '#ff0000')
+ - An rgb/rgba string (e.g. 'rgb(255,0,0)')
+ - An hsl/hsla string (e.g. 'hsl(0,100%,50%)')
+ - An hsv/hsva string (e.g. 'hsv(0,100%,100%)')
+ - A named CSS color: see https://plotly.com/python/css-colors/ for a list
+ - A list or array of any of the above
+
+ Returns
+ -------
+ str|numpy.ndarray
+ """
+ return self["bgcolor"]
+
+ @bgcolor.setter
+ def bgcolor(self, val):
+ self["bgcolor"] = val
+
+ @property
+ def bgcolorsrc(self):
+ """
+ Sets the source reference on Chart Studio Cloud for `bgcolor`.
+
+ The 'bgcolorsrc' property must be specified as a string or
+ as a plotly.grid_objs.Column object
+
+ Returns
+ -------
+ str
+ """
+ return self["bgcolorsrc"]
+
+ @bgcolorsrc.setter
+ def bgcolorsrc(self, val):
+ self["bgcolorsrc"] = val
+
+ @property
+ def bordercolor(self):
+ """
+ Sets the border color of the hover labels for this trace.
+
+ The 'bordercolor' property is a color and may be specified as:
+ - A hex string (e.g. '#ff0000')
+ - An rgb/rgba string (e.g. 'rgb(255,0,0)')
+ - An hsl/hsla string (e.g. 'hsl(0,100%,50%)')
+ - An hsv/hsva string (e.g. 'hsv(0,100%,100%)')
+ - A named CSS color: see https://plotly.com/python/css-colors/ for a list
+ - A list or array of any of the above
+
+ Returns
+ -------
+ str|numpy.ndarray
+ """
+ return self["bordercolor"]
+
+ @bordercolor.setter
+ def bordercolor(self, val):
+ self["bordercolor"] = val
+
+ @property
+ def bordercolorsrc(self):
+ """
+ Sets the source reference on Chart Studio Cloud for
+ `bordercolor`.
+
+ The 'bordercolorsrc' property must be specified as a string or
+ as a plotly.grid_objs.Column object
+
+ Returns
+ -------
+ str
+ """
+ return self["bordercolorsrc"]
+
+ @bordercolorsrc.setter
+ def bordercolorsrc(self, val):
+ self["bordercolorsrc"] = val
+
+ @property
+ def font(self):
+ """
+ Sets the font used in hover labels.
+
+ The 'font' property is an instance of Font
+ that may be specified as:
+ - An instance of :class:`plotly.graph_objs.sankey.link.hoverlabel.Font`
+ - A dict of string/value properties that will be passed
+ to the Font constructor
+
+ Returns
+ -------
+ plotly.graph_objs.sankey.link.hoverlabel.Font
+ """
+ return self["font"]
+
+ @font.setter
+ def font(self, val):
+ self["font"] = val
+
+ @property
+ def namelength(self):
+ """
+ Sets the default length (in number of characters) of the trace
+ name in the hover labels for all traces. -1 shows the whole
+ name regardless of length. 0-3 shows the first 0-3 characters,
+ and an integer >3 will show the whole name if it is less than
+ that many characters, but if it is longer, will truncate to
+ `namelength - 3` characters and add an ellipsis.
+
+ The 'namelength' property is a integer and may be specified as:
+ - An int (or float that will be cast to an int)
+ in the interval [-1, 9223372036854775807]
+ - A tuple, list, or one-dimensional numpy array of the above
+
+ Returns
+ -------
+ int|numpy.ndarray
+ """
+ return self["namelength"]
+
+ @namelength.setter
+ def namelength(self, val):
+ self["namelength"] = val
+
+ @property
+ def namelengthsrc(self):
+ """
+ Sets the source reference on Chart Studio Cloud for
+ `namelength`.
+
+ The 'namelengthsrc' property must be specified as a string or
+ as a plotly.grid_objs.Column object
+
+ Returns
+ -------
+ str
+ """
+ return self["namelengthsrc"]
+
+ @namelengthsrc.setter
+ def namelengthsrc(self, val):
+ self["namelengthsrc"] = val
+
+ @property
+ def _prop_descriptions(self):
+ return """\
+ align
+ Sets the horizontal alignment of the text content
+ within hover label box. Has an effect only if the hover
+ label text spans more two or more lines
+ alignsrc
+ Sets the source reference on Chart Studio Cloud for
+ `align`.
+ bgcolor
+ Sets the background color of the hover labels for this
+ trace
+ bgcolorsrc
+ Sets the source reference on Chart Studio Cloud for
+ `bgcolor`.
+ bordercolor
+ Sets the border color of the hover labels for this
+ trace.
+ bordercolorsrc
+ Sets the source reference on Chart Studio Cloud for
+ `bordercolor`.
+ font
+ Sets the font used in hover labels.
+ namelength
+ Sets the default length (in number of characters) of
+ the trace name in the hover labels for all traces. -1
+ shows the whole name regardless of length. 0-3 shows
+ the first 0-3 characters, and an integer >3 will show
+ the whole name if it is less than that many characters,
+ but if it is longer, will truncate to `namelength - 3`
+ characters and add an ellipsis.
+ namelengthsrc
+ Sets the source reference on Chart Studio Cloud for
+ `namelength`.
+ """
+
+ def __init__(
+ self,
+ arg=None,
+ align=None,
+ alignsrc=None,
+ bgcolor=None,
+ bgcolorsrc=None,
+ bordercolor=None,
+ bordercolorsrc=None,
+ font=None,
+ namelength=None,
+ namelengthsrc=None,
+ **kwargs,
+ ):
+ """
+ Construct a new Hoverlabel object
+
+ Parameters
+ ----------
+ arg
+ dict of properties compatible with this constructor or
+ an instance of
+ :class:`plotly.graph_objs.sankey.link.Hoverlabel`
+ align
+ Sets the horizontal alignment of the text content
+ within hover label box. Has an effect only if the hover
+ label text spans more two or more lines
+ alignsrc
+ Sets the source reference on Chart Studio Cloud for
+ `align`.
+ bgcolor
+ Sets the background color of the hover labels for this
+ trace
+ bgcolorsrc
+ Sets the source reference on Chart Studio Cloud for
+ `bgcolor`.
+ bordercolor
+ Sets the border color of the hover labels for this
+ trace.
+ bordercolorsrc
+ Sets the source reference on Chart Studio Cloud for
+ `bordercolor`.
+ font
+ Sets the font used in hover labels.
+ namelength
+ Sets the default length (in number of characters) of
+ the trace name in the hover labels for all traces. -1
+ shows the whole name regardless of length. 0-3 shows
+ the first 0-3 characters, and an integer >3 will show
+ the whole name if it is less than that many characters,
+ but if it is longer, will truncate to `namelength - 3`
+ characters and add an ellipsis.
+ namelengthsrc
+ Sets the source reference on Chart Studio Cloud for
+ `namelength`.
+
+ Returns
+ -------
+ Hoverlabel
+ """
+ super().__init__("hoverlabel")
+ if "_parent" in kwargs:
+ self._parent = kwargs["_parent"]
+ return
+
+ if arg is None:
+ arg = {}
+ elif isinstance(arg, self.__class__):
+ arg = arg.to_plotly_json()
+ elif isinstance(arg, dict):
+ arg = _copy.copy(arg)
+ else:
+ raise ValueError("""\
+The first argument to the plotly.graph_objs.sankey.link.Hoverlabel
+constructor must be a dict or
+an instance of :class:`plotly.graph_objs.sankey.link.Hoverlabel`""")
+
+ self._skip_invalid = kwargs.pop("skip_invalid", False)
+ self._validate = kwargs.pop("_validate", True)
+
+ self._set_property("align", arg, align)
+ self._set_property("alignsrc", arg, alignsrc)
+ self._set_property("bgcolor", arg, bgcolor)
+ self._set_property("bgcolorsrc", arg, bgcolorsrc)
+ self._set_property("bordercolor", arg, bordercolor)
+ self._set_property("bordercolorsrc", arg, bordercolorsrc)
+ self._set_property("font", arg, font)
+ self._set_property("namelength", arg, namelength)
+ self._set_property("namelengthsrc", arg, namelengthsrc)
+ self._process_kwargs(**dict(arg, **kwargs))
+ self._skip_invalid = False
diff --git a/venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/link/_line.py b/venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/link/_line.py
new file mode 100644
index 0000000..feb0d9e
--- /dev/null
+++ b/venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/link/_line.py
@@ -0,0 +1,160 @@
+# --- THIS FILE IS AUTO-GENERATED ---
+# Modifications will be overwitten the next time code generation run.
+
+from plotly.basedatatypes import BaseTraceHierarchyType as _BaseTraceHierarchyType
+import copy as _copy
+
+
+class Line(_BaseTraceHierarchyType):
+ _parent_path_str = "sankey.link"
+ _path_str = "sankey.link.line"
+ _valid_props = {"color", "colorsrc", "width", "widthsrc"}
+
+ @property
+ def color(self):
+ """
+ Sets the color of the `line` around each `link`.
+
+ The 'color' property is a color and may be specified as:
+ - A hex string (e.g. '#ff0000')
+ - An rgb/rgba string (e.g. 'rgb(255,0,0)')
+ - An hsl/hsla string (e.g. 'hsl(0,100%,50%)')
+ - An hsv/hsva string (e.g. 'hsv(0,100%,100%)')
+ - A named CSS color: see https://plotly.com/python/css-colors/ for a list
+ - A list or array of any of the above
+
+ Returns
+ -------
+ str|numpy.ndarray
+ """
+ return self["color"]
+
+ @color.setter
+ def color(self, val):
+ self["color"] = val
+
+ @property
+ def colorsrc(self):
+ """
+ Sets the source reference on Chart Studio Cloud for `color`.
+
+ The 'colorsrc' property must be specified as a string or
+ as a plotly.grid_objs.Column object
+
+ Returns
+ -------
+ str
+ """
+ return self["colorsrc"]
+
+ @colorsrc.setter
+ def colorsrc(self, val):
+ self["colorsrc"] = val
+
+ @property
+ def width(self):
+ """
+ Sets the width (in px) of the `line` around each `link`.
+
+ The 'width' property is a number and may be specified as:
+ - An int or float in the interval [0, inf]
+ - A tuple, list, or one-dimensional numpy array of the above
+
+ Returns
+ -------
+ int|float|numpy.ndarray
+ """
+ return self["width"]
+
+ @width.setter
+ def width(self, val):
+ self["width"] = val
+
+ @property
+ def widthsrc(self):
+ """
+ Sets the source reference on Chart Studio Cloud for `width`.
+
+ The 'widthsrc' property must be specified as a string or
+ as a plotly.grid_objs.Column object
+
+ Returns
+ -------
+ str
+ """
+ return self["widthsrc"]
+
+ @widthsrc.setter
+ def widthsrc(self, val):
+ self["widthsrc"] = val
+
+ @property
+ def _prop_descriptions(self):
+ return """\
+ color
+ Sets the color of the `line` around each `link`.
+ colorsrc
+ Sets the source reference on Chart Studio Cloud for
+ `color`.
+ width
+ Sets the width (in px) of the `line` around each
+ `link`.
+ widthsrc
+ Sets the source reference on Chart Studio Cloud for
+ `width`.
+ """
+
+ def __init__(
+ self, arg=None, color=None, colorsrc=None, width=None, widthsrc=None, **kwargs
+ ):
+ """
+ Construct a new Line object
+
+ Parameters
+ ----------
+ arg
+ dict of properties compatible with this constructor or
+ an instance of
+ :class:`plotly.graph_objs.sankey.link.Line`
+ color
+ Sets the color of the `line` around each `link`.
+ colorsrc
+ Sets the source reference on Chart Studio Cloud for
+ `color`.
+ width
+ Sets the width (in px) of the `line` around each
+ `link`.
+ widthsrc
+ Sets the source reference on Chart Studio Cloud for
+ `width`.
+
+ Returns
+ -------
+ Line
+ """
+ super().__init__("line")
+ if "_parent" in kwargs:
+ self._parent = kwargs["_parent"]
+ return
+
+ if arg is None:
+ arg = {}
+ elif isinstance(arg, self.__class__):
+ arg = arg.to_plotly_json()
+ elif isinstance(arg, dict):
+ arg = _copy.copy(arg)
+ else:
+ raise ValueError("""\
+The first argument to the plotly.graph_objs.sankey.link.Line
+constructor must be a dict or
+an instance of :class:`plotly.graph_objs.sankey.link.Line`""")
+
+ self._skip_invalid = kwargs.pop("skip_invalid", False)
+ self._validate = kwargs.pop("_validate", True)
+
+ self._set_property("color", arg, color)
+ self._set_property("colorsrc", arg, colorsrc)
+ self._set_property("width", arg, width)
+ self._set_property("widthsrc", arg, widthsrc)
+ self._process_kwargs(**dict(arg, **kwargs))
+ self._skip_invalid = False
diff --git a/venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/link/hoverlabel/__init__.py b/venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/link/hoverlabel/__init__.py
new file mode 100644
index 0000000..56f600d
--- /dev/null
+++ b/venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/link/hoverlabel/__init__.py
@@ -0,0 +1,9 @@
+import sys
+from typing import TYPE_CHECKING
+
+if TYPE_CHECKING:
+ from ._font import Font
+else:
+ from _plotly_utils.importers import relative_import
+
+ __all__, __getattr__, __dir__ = relative_import(__name__, [], ["._font.Font"])
diff --git a/venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/link/hoverlabel/_font.py b/venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/link/hoverlabel/_font.py
new file mode 100644
index 0000000..e96c178
--- /dev/null
+++ b/venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/link/hoverlabel/_font.py
@@ -0,0 +1,587 @@
+# --- THIS FILE IS AUTO-GENERATED ---
+# Modifications will be overwitten the next time code generation run.
+
+from plotly.basedatatypes import BaseTraceHierarchyType as _BaseTraceHierarchyType
+import copy as _copy
+
+
+class Font(_BaseTraceHierarchyType):
+ _parent_path_str = "sankey.link.hoverlabel"
+ _path_str = "sankey.link.hoverlabel.font"
+ _valid_props = {
+ "color",
+ "colorsrc",
+ "family",
+ "familysrc",
+ "lineposition",
+ "linepositionsrc",
+ "shadow",
+ "shadowsrc",
+ "size",
+ "sizesrc",
+ "style",
+ "stylesrc",
+ "textcase",
+ "textcasesrc",
+ "variant",
+ "variantsrc",
+ "weight",
+ "weightsrc",
+ }
+
+ @property
+ def color(self):
+ """
+ The 'color' property is a color and may be specified as:
+ - A hex string (e.g. '#ff0000')
+ - An rgb/rgba string (e.g. 'rgb(255,0,0)')
+ - An hsl/hsla string (e.g. 'hsl(0,100%,50%)')
+ - An hsv/hsva string (e.g. 'hsv(0,100%,100%)')
+ - A named CSS color: see https://plotly.com/python/css-colors/ for a list
+ - A list or array of any of the above
+
+ Returns
+ -------
+ str|numpy.ndarray
+ """
+ return self["color"]
+
+ @color.setter
+ def color(self, val):
+ self["color"] = val
+
+ @property
+ def colorsrc(self):
+ """
+ Sets the source reference on Chart Studio Cloud for `color`.
+
+ The 'colorsrc' property must be specified as a string or
+ as a plotly.grid_objs.Column object
+
+ Returns
+ -------
+ str
+ """
+ return self["colorsrc"]
+
+ @colorsrc.setter
+ def colorsrc(self, val):
+ self["colorsrc"] = val
+
+ @property
+ def family(self):
+ """
+ HTML font family - the typeface that will be applied by the web
+ browser. The web browser can only apply a font if it is
+ available on the system where it runs. Provide multiple font
+ families, separated by commas, to indicate the order in which
+ to apply fonts if they aren't available.
+
+ The 'family' property is a string and must be specified as:
+ - A non-empty string
+ - A tuple, list, or one-dimensional numpy array of the above
+
+ Returns
+ -------
+ str|numpy.ndarray
+ """
+ return self["family"]
+
+ @family.setter
+ def family(self, val):
+ self["family"] = val
+
+ @property
+ def familysrc(self):
+ """
+ Sets the source reference on Chart Studio Cloud for `family`.
+
+ The 'familysrc' property must be specified as a string or
+ as a plotly.grid_objs.Column object
+
+ Returns
+ -------
+ str
+ """
+ return self["familysrc"]
+
+ @familysrc.setter
+ def familysrc(self, val):
+ self["familysrc"] = val
+
+ @property
+ def lineposition(self):
+ """
+ Sets the kind of decoration line(s) with text, such as an
+ "under", "over" or "through" as well as combinations e.g.
+ "under+over", etc.
+
+ The 'lineposition' property is a flaglist and may be specified
+ as a string containing:
+ - Any combination of ['under', 'over', 'through'] joined with '+' characters
+ (e.g. 'under+over')
+ OR exactly one of ['none'] (e.g. 'none')
+ - A list or array of the above
+
+ Returns
+ -------
+ Any|numpy.ndarray
+ """
+ return self["lineposition"]
+
+ @lineposition.setter
+ def lineposition(self, val):
+ self["lineposition"] = val
+
+ @property
+ def linepositionsrc(self):
+ """
+ Sets the source reference on Chart Studio Cloud for
+ `lineposition`.
+
+ The 'linepositionsrc' property must be specified as a string or
+ as a plotly.grid_objs.Column object
+
+ Returns
+ -------
+ str
+ """
+ return self["linepositionsrc"]
+
+ @linepositionsrc.setter
+ def linepositionsrc(self, val):
+ self["linepositionsrc"] = val
+
+ @property
+ def shadow(self):
+ """
+ Sets the shape and color of the shadow behind text. "auto"
+ places minimal shadow and applies contrast text font color. See
+ https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow
+ for additional options.
+
+ The 'shadow' property is a string and must be specified as:
+ - A string
+ - A number that will be converted to a string
+ - A tuple, list, or one-dimensional numpy array of the above
+
+ Returns
+ -------
+ str|numpy.ndarray
+ """
+ return self["shadow"]
+
+ @shadow.setter
+ def shadow(self, val):
+ self["shadow"] = val
+
+ @property
+ def shadowsrc(self):
+ """
+ Sets the source reference on Chart Studio Cloud for `shadow`.
+
+ The 'shadowsrc' property must be specified as a string or
+ as a plotly.grid_objs.Column object
+
+ Returns
+ -------
+ str
+ """
+ return self["shadowsrc"]
+
+ @shadowsrc.setter
+ def shadowsrc(self, val):
+ self["shadowsrc"] = val
+
+ @property
+ def size(self):
+ """
+ The 'size' property is a number and may be specified as:
+ - An int or float in the interval [1, inf]
+ - A tuple, list, or one-dimensional numpy array of the above
+
+ Returns
+ -------
+ int|float|numpy.ndarray
+ """
+ return self["size"]
+
+ @size.setter
+ def size(self, val):
+ self["size"] = val
+
+ @property
+ def sizesrc(self):
+ """
+ Sets the source reference on Chart Studio Cloud for `size`.
+
+ The 'sizesrc' property must be specified as a string or
+ as a plotly.grid_objs.Column object
+
+ Returns
+ -------
+ str
+ """
+ return self["sizesrc"]
+
+ @sizesrc.setter
+ def sizesrc(self, val):
+ self["sizesrc"] = val
+
+ @property
+ def style(self):
+ """
+ Sets whether a font should be styled with a normal or italic
+ face from its family.
+
+ The 'style' property is an enumeration that may be specified as:
+ - One of the following enumeration values:
+ ['normal', 'italic']
+ - A tuple, list, or one-dimensional numpy array of the above
+
+ Returns
+ -------
+ Any|numpy.ndarray
+ """
+ return self["style"]
+
+ @style.setter
+ def style(self, val):
+ self["style"] = val
+
+ @property
+ def stylesrc(self):
+ """
+ Sets the source reference on Chart Studio Cloud for `style`.
+
+ The 'stylesrc' property must be specified as a string or
+ as a plotly.grid_objs.Column object
+
+ Returns
+ -------
+ str
+ """
+ return self["stylesrc"]
+
+ @stylesrc.setter
+ def stylesrc(self, val):
+ self["stylesrc"] = val
+
+ @property
+ def textcase(self):
+ """
+ Sets capitalization of text. It can be used to make text appear
+ in all-uppercase or all-lowercase, or with each word
+ capitalized.
+
+ The 'textcase' property is an enumeration that may be specified as:
+ - One of the following enumeration values:
+ ['normal', 'word caps', 'upper', 'lower']
+ - A tuple, list, or one-dimensional numpy array of the above
+
+ Returns
+ -------
+ Any|numpy.ndarray
+ """
+ return self["textcase"]
+
+ @textcase.setter
+ def textcase(self, val):
+ self["textcase"] = val
+
+ @property
+ def textcasesrc(self):
+ """
+ Sets the source reference on Chart Studio Cloud for `textcase`.
+
+ The 'textcasesrc' property must be specified as a string or
+ as a plotly.grid_objs.Column object
+
+ Returns
+ -------
+ str
+ """
+ return self["textcasesrc"]
+
+ @textcasesrc.setter
+ def textcasesrc(self, val):
+ self["textcasesrc"] = val
+
+ @property
+ def variant(self):
+ """
+ Sets the variant of the font.
+
+ The 'variant' property is an enumeration that may be specified as:
+ - One of the following enumeration values:
+ ['normal', 'small-caps', 'all-small-caps',
+ 'all-petite-caps', 'petite-caps', 'unicase']
+ - A tuple, list, or one-dimensional numpy array of the above
+
+ Returns
+ -------
+ Any|numpy.ndarray
+ """
+ return self["variant"]
+
+ @variant.setter
+ def variant(self, val):
+ self["variant"] = val
+
+ @property
+ def variantsrc(self):
+ """
+ Sets the source reference on Chart Studio Cloud for `variant`.
+
+ The 'variantsrc' property must be specified as a string or
+ as a plotly.grid_objs.Column object
+
+ Returns
+ -------
+ str
+ """
+ return self["variantsrc"]
+
+ @variantsrc.setter
+ def variantsrc(self, val):
+ self["variantsrc"] = val
+
+ @property
+ def weight(self):
+ """
+ Sets the weight (or boldness) of the font.
+
+ The 'weight' property is a integer and may be specified as:
+ - An int (or float that will be cast to an int)
+ in the interval [1, 1000]
+ OR exactly one of ['normal', 'bold'] (e.g. 'bold')
+ - A tuple, list, or one-dimensional numpy array of the above
+
+ Returns
+ -------
+ int|numpy.ndarray
+ """
+ return self["weight"]
+
+ @weight.setter
+ def weight(self, val):
+ self["weight"] = val
+
+ @property
+ def weightsrc(self):
+ """
+ Sets the source reference on Chart Studio Cloud for `weight`.
+
+ The 'weightsrc' property must be specified as a string or
+ as a plotly.grid_objs.Column object
+
+ Returns
+ -------
+ str
+ """
+ return self["weightsrc"]
+
+ @weightsrc.setter
+ def weightsrc(self, val):
+ self["weightsrc"] = val
+
+ @property
+ def _prop_descriptions(self):
+ return """\
+ color
+
+ colorsrc
+ Sets the source reference on Chart Studio Cloud for
+ `color`.
+ family
+ HTML font family - the typeface that will be applied by
+ the web browser. The web browser can only apply a font
+ if it is available on the system where it runs. Provide
+ multiple font families, separated by commas, to
+ indicate the order in which to apply fonts if they
+ aren't available.
+ familysrc
+ Sets the source reference on Chart Studio Cloud for
+ `family`.
+ lineposition
+ Sets the kind of decoration line(s) with text, such as
+ an "under", "over" or "through" as well as combinations
+ e.g. "under+over", etc.
+ linepositionsrc
+ Sets the source reference on Chart Studio Cloud for
+ `lineposition`.
+ shadow
+ Sets the shape and color of the shadow behind text.
+ "auto" places minimal shadow and applies contrast text
+ font color. See https://developer.mozilla.org/en-
+ US/docs/Web/CSS/text-shadow for additional options.
+ shadowsrc
+ Sets the source reference on Chart Studio Cloud for
+ `shadow`.
+ size
+
+ sizesrc
+ Sets the source reference on Chart Studio Cloud for
+ `size`.
+ style
+ Sets whether a font should be styled with a normal or
+ italic face from its family.
+ stylesrc
+ Sets the source reference on Chart Studio Cloud for
+ `style`.
+ textcase
+ Sets capitalization of text. It can be used to make
+ text appear in all-uppercase or all-lowercase, or with
+ each word capitalized.
+ textcasesrc
+ Sets the source reference on Chart Studio Cloud for
+ `textcase`.
+ variant
+ Sets the variant of the font.
+ variantsrc
+ Sets the source reference on Chart Studio Cloud for
+ `variant`.
+ weight
+ Sets the weight (or boldness) of the font.
+ weightsrc
+ Sets the source reference on Chart Studio Cloud for
+ `weight`.
+ """
+
+ def __init__(
+ self,
+ arg=None,
+ color=None,
+ colorsrc=None,
+ family=None,
+ familysrc=None,
+ lineposition=None,
+ linepositionsrc=None,
+ shadow=None,
+ shadowsrc=None,
+ size=None,
+ sizesrc=None,
+ style=None,
+ stylesrc=None,
+ textcase=None,
+ textcasesrc=None,
+ variant=None,
+ variantsrc=None,
+ weight=None,
+ weightsrc=None,
+ **kwargs,
+ ):
+ """
+ Construct a new Font object
+
+ Sets the font used in hover labels.
+
+ Parameters
+ ----------
+ arg
+ dict of properties compatible with this constructor or
+ an instance of
+ :class:`plotly.graph_objs.sankey.link.hoverlabel.Font`
+ color
+
+ colorsrc
+ Sets the source reference on Chart Studio Cloud for
+ `color`.
+ family
+ HTML font family - the typeface that will be applied by
+ the web browser. The web browser can only apply a font
+ if it is available on the system where it runs. Provide
+ multiple font families, separated by commas, to
+ indicate the order in which to apply fonts if they
+ aren't available.
+ familysrc
+ Sets the source reference on Chart Studio Cloud for
+ `family`.
+ lineposition
+ Sets the kind of decoration line(s) with text, such as
+ an "under", "over" or "through" as well as combinations
+ e.g. "under+over", etc.
+ linepositionsrc
+ Sets the source reference on Chart Studio Cloud for
+ `lineposition`.
+ shadow
+ Sets the shape and color of the shadow behind text.
+ "auto" places minimal shadow and applies contrast text
+ font color. See https://developer.mozilla.org/en-
+ US/docs/Web/CSS/text-shadow for additional options.
+ shadowsrc
+ Sets the source reference on Chart Studio Cloud for
+ `shadow`.
+ size
+
+ sizesrc
+ Sets the source reference on Chart Studio Cloud for
+ `size`.
+ style
+ Sets whether a font should be styled with a normal or
+ italic face from its family.
+ stylesrc
+ Sets the source reference on Chart Studio Cloud for
+ `style`.
+ textcase
+ Sets capitalization of text. It can be used to make
+ text appear in all-uppercase or all-lowercase, or with
+ each word capitalized.
+ textcasesrc
+ Sets the source reference on Chart Studio Cloud for
+ `textcase`.
+ variant
+ Sets the variant of the font.
+ variantsrc
+ Sets the source reference on Chart Studio Cloud for
+ `variant`.
+ weight
+ Sets the weight (or boldness) of the font.
+ weightsrc
+ Sets the source reference on Chart Studio Cloud for
+ `weight`.
+
+ Returns
+ -------
+ Font
+ """
+ super().__init__("font")
+ if "_parent" in kwargs:
+ self._parent = kwargs["_parent"]
+ return
+
+ if arg is None:
+ arg = {}
+ elif isinstance(arg, self.__class__):
+ arg = arg.to_plotly_json()
+ elif isinstance(arg, dict):
+ arg = _copy.copy(arg)
+ else:
+ raise ValueError("""\
+The first argument to the plotly.graph_objs.sankey.link.hoverlabel.Font
+constructor must be a dict or
+an instance of :class:`plotly.graph_objs.sankey.link.hoverlabel.Font`""")
+
+ self._skip_invalid = kwargs.pop("skip_invalid", False)
+ self._validate = kwargs.pop("_validate", True)
+
+ self._set_property("color", arg, color)
+ self._set_property("colorsrc", arg, colorsrc)
+ self._set_property("family", arg, family)
+ self._set_property("familysrc", arg, familysrc)
+ self._set_property("lineposition", arg, lineposition)
+ self._set_property("linepositionsrc", arg, linepositionsrc)
+ self._set_property("shadow", arg, shadow)
+ self._set_property("shadowsrc", arg, shadowsrc)
+ self._set_property("size", arg, size)
+ self._set_property("sizesrc", arg, sizesrc)
+ self._set_property("style", arg, style)
+ self._set_property("stylesrc", arg, stylesrc)
+ self._set_property("textcase", arg, textcase)
+ self._set_property("textcasesrc", arg, textcasesrc)
+ self._set_property("variant", arg, variant)
+ self._set_property("variantsrc", arg, variantsrc)
+ self._set_property("weight", arg, weight)
+ self._set_property("weightsrc", arg, weightsrc)
+ self._process_kwargs(**dict(arg, **kwargs))
+ self._skip_invalid = False
diff --git a/venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/node/__init__.py b/venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/node/__init__.py
new file mode 100644
index 0000000..dfd0787
--- /dev/null
+++ b/venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/node/__init__.py
@@ -0,0 +1,13 @@
+import sys
+from typing import TYPE_CHECKING
+
+if TYPE_CHECKING:
+ from ._hoverlabel import Hoverlabel
+ from ._line import Line
+ from . import hoverlabel
+else:
+ from _plotly_utils.importers import relative_import
+
+ __all__, __getattr__, __dir__ = relative_import(
+ __name__, [".hoverlabel"], ["._hoverlabel.Hoverlabel", "._line.Line"]
+ )
diff --git a/venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/node/_hoverlabel.py b/venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/node/_hoverlabel.py
new file mode 100644
index 0000000..22a6590
--- /dev/null
+++ b/venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/node/_hoverlabel.py
@@ -0,0 +1,338 @@
+# --- THIS FILE IS AUTO-GENERATED ---
+# Modifications will be overwitten the next time code generation run.
+
+from plotly.basedatatypes import BaseTraceHierarchyType as _BaseTraceHierarchyType
+import copy as _copy
+
+
+class Hoverlabel(_BaseTraceHierarchyType):
+ _parent_path_str = "sankey.node"
+ _path_str = "sankey.node.hoverlabel"
+ _valid_props = {
+ "align",
+ "alignsrc",
+ "bgcolor",
+ "bgcolorsrc",
+ "bordercolor",
+ "bordercolorsrc",
+ "font",
+ "namelength",
+ "namelengthsrc",
+ }
+
+ @property
+ def align(self):
+ """
+ Sets the horizontal alignment of the text content within hover
+ label box. Has an effect only if the hover label text spans
+ more two or more lines
+
+ The 'align' property is an enumeration that may be specified as:
+ - One of the following enumeration values:
+ ['left', 'right', 'auto']
+ - A tuple, list, or one-dimensional numpy array of the above
+
+ Returns
+ -------
+ Any|numpy.ndarray
+ """
+ return self["align"]
+
+ @align.setter
+ def align(self, val):
+ self["align"] = val
+
+ @property
+ def alignsrc(self):
+ """
+ Sets the source reference on Chart Studio Cloud for `align`.
+
+ The 'alignsrc' property must be specified as a string or
+ as a plotly.grid_objs.Column object
+
+ Returns
+ -------
+ str
+ """
+ return self["alignsrc"]
+
+ @alignsrc.setter
+ def alignsrc(self, val):
+ self["alignsrc"] = val
+
+ @property
+ def bgcolor(self):
+ """
+ Sets the background color of the hover labels for this trace
+
+ The 'bgcolor' property is a color and may be specified as:
+ - A hex string (e.g. '#ff0000')
+ - An rgb/rgba string (e.g. 'rgb(255,0,0)')
+ - An hsl/hsla string (e.g. 'hsl(0,100%,50%)')
+ - An hsv/hsva string (e.g. 'hsv(0,100%,100%)')
+ - A named CSS color: see https://plotly.com/python/css-colors/ for a list
+ - A list or array of any of the above
+
+ Returns
+ -------
+ str|numpy.ndarray
+ """
+ return self["bgcolor"]
+
+ @bgcolor.setter
+ def bgcolor(self, val):
+ self["bgcolor"] = val
+
+ @property
+ def bgcolorsrc(self):
+ """
+ Sets the source reference on Chart Studio Cloud for `bgcolor`.
+
+ The 'bgcolorsrc' property must be specified as a string or
+ as a plotly.grid_objs.Column object
+
+ Returns
+ -------
+ str
+ """
+ return self["bgcolorsrc"]
+
+ @bgcolorsrc.setter
+ def bgcolorsrc(self, val):
+ self["bgcolorsrc"] = val
+
+ @property
+ def bordercolor(self):
+ """
+ Sets the border color of the hover labels for this trace.
+
+ The 'bordercolor' property is a color and may be specified as:
+ - A hex string (e.g. '#ff0000')
+ - An rgb/rgba string (e.g. 'rgb(255,0,0)')
+ - An hsl/hsla string (e.g. 'hsl(0,100%,50%)')
+ - An hsv/hsva string (e.g. 'hsv(0,100%,100%)')
+ - A named CSS color: see https://plotly.com/python/css-colors/ for a list
+ - A list or array of any of the above
+
+ Returns
+ -------
+ str|numpy.ndarray
+ """
+ return self["bordercolor"]
+
+ @bordercolor.setter
+ def bordercolor(self, val):
+ self["bordercolor"] = val
+
+ @property
+ def bordercolorsrc(self):
+ """
+ Sets the source reference on Chart Studio Cloud for
+ `bordercolor`.
+
+ The 'bordercolorsrc' property must be specified as a string or
+ as a plotly.grid_objs.Column object
+
+ Returns
+ -------
+ str
+ """
+ return self["bordercolorsrc"]
+
+ @bordercolorsrc.setter
+ def bordercolorsrc(self, val):
+ self["bordercolorsrc"] = val
+
+ @property
+ def font(self):
+ """
+ Sets the font used in hover labels.
+
+ The 'font' property is an instance of Font
+ that may be specified as:
+ - An instance of :class:`plotly.graph_objs.sankey.node.hoverlabel.Font`
+ - A dict of string/value properties that will be passed
+ to the Font constructor
+
+ Returns
+ -------
+ plotly.graph_objs.sankey.node.hoverlabel.Font
+ """
+ return self["font"]
+
+ @font.setter
+ def font(self, val):
+ self["font"] = val
+
+ @property
+ def namelength(self):
+ """
+ Sets the default length (in number of characters) of the trace
+ name in the hover labels for all traces. -1 shows the whole
+ name regardless of length. 0-3 shows the first 0-3 characters,
+ and an integer >3 will show the whole name if it is less than
+ that many characters, but if it is longer, will truncate to
+ `namelength - 3` characters and add an ellipsis.
+
+ The 'namelength' property is a integer and may be specified as:
+ - An int (or float that will be cast to an int)
+ in the interval [-1, 9223372036854775807]
+ - A tuple, list, or one-dimensional numpy array of the above
+
+ Returns
+ -------
+ int|numpy.ndarray
+ """
+ return self["namelength"]
+
+ @namelength.setter
+ def namelength(self, val):
+ self["namelength"] = val
+
+ @property
+ def namelengthsrc(self):
+ """
+ Sets the source reference on Chart Studio Cloud for
+ `namelength`.
+
+ The 'namelengthsrc' property must be specified as a string or
+ as a plotly.grid_objs.Column object
+
+ Returns
+ -------
+ str
+ """
+ return self["namelengthsrc"]
+
+ @namelengthsrc.setter
+ def namelengthsrc(self, val):
+ self["namelengthsrc"] = val
+
+ @property
+ def _prop_descriptions(self):
+ return """\
+ align
+ Sets the horizontal alignment of the text content
+ within hover label box. Has an effect only if the hover
+ label text spans more two or more lines
+ alignsrc
+ Sets the source reference on Chart Studio Cloud for
+ `align`.
+ bgcolor
+ Sets the background color of the hover labels for this
+ trace
+ bgcolorsrc
+ Sets the source reference on Chart Studio Cloud for
+ `bgcolor`.
+ bordercolor
+ Sets the border color of the hover labels for this
+ trace.
+ bordercolorsrc
+ Sets the source reference on Chart Studio Cloud for
+ `bordercolor`.
+ font
+ Sets the font used in hover labels.
+ namelength
+ Sets the default length (in number of characters) of
+ the trace name in the hover labels for all traces. -1
+ shows the whole name regardless of length. 0-3 shows
+ the first 0-3 characters, and an integer >3 will show
+ the whole name if it is less than that many characters,
+ but if it is longer, will truncate to `namelength - 3`
+ characters and add an ellipsis.
+ namelengthsrc
+ Sets the source reference on Chart Studio Cloud for
+ `namelength`.
+ """
+
+ def __init__(
+ self,
+ arg=None,
+ align=None,
+ alignsrc=None,
+ bgcolor=None,
+ bgcolorsrc=None,
+ bordercolor=None,
+ bordercolorsrc=None,
+ font=None,
+ namelength=None,
+ namelengthsrc=None,
+ **kwargs,
+ ):
+ """
+ Construct a new Hoverlabel object
+
+ Parameters
+ ----------
+ arg
+ dict of properties compatible with this constructor or
+ an instance of
+ :class:`plotly.graph_objs.sankey.node.Hoverlabel`
+ align
+ Sets the horizontal alignment of the text content
+ within hover label box. Has an effect only if the hover
+ label text spans more two or more lines
+ alignsrc
+ Sets the source reference on Chart Studio Cloud for
+ `align`.
+ bgcolor
+ Sets the background color of the hover labels for this
+ trace
+ bgcolorsrc
+ Sets the source reference on Chart Studio Cloud for
+ `bgcolor`.
+ bordercolor
+ Sets the border color of the hover labels for this
+ trace.
+ bordercolorsrc
+ Sets the source reference on Chart Studio Cloud for
+ `bordercolor`.
+ font
+ Sets the font used in hover labels.
+ namelength
+ Sets the default length (in number of characters) of
+ the trace name in the hover labels for all traces. -1
+ shows the whole name regardless of length. 0-3 shows
+ the first 0-3 characters, and an integer >3 will show
+ the whole name if it is less than that many characters,
+ but if it is longer, will truncate to `namelength - 3`
+ characters and add an ellipsis.
+ namelengthsrc
+ Sets the source reference on Chart Studio Cloud for
+ `namelength`.
+
+ Returns
+ -------
+ Hoverlabel
+ """
+ super().__init__("hoverlabel")
+ if "_parent" in kwargs:
+ self._parent = kwargs["_parent"]
+ return
+
+ if arg is None:
+ arg = {}
+ elif isinstance(arg, self.__class__):
+ arg = arg.to_plotly_json()
+ elif isinstance(arg, dict):
+ arg = _copy.copy(arg)
+ else:
+ raise ValueError("""\
+The first argument to the plotly.graph_objs.sankey.node.Hoverlabel
+constructor must be a dict or
+an instance of :class:`plotly.graph_objs.sankey.node.Hoverlabel`""")
+
+ self._skip_invalid = kwargs.pop("skip_invalid", False)
+ self._validate = kwargs.pop("_validate", True)
+
+ self._set_property("align", arg, align)
+ self._set_property("alignsrc", arg, alignsrc)
+ self._set_property("bgcolor", arg, bgcolor)
+ self._set_property("bgcolorsrc", arg, bgcolorsrc)
+ self._set_property("bordercolor", arg, bordercolor)
+ self._set_property("bordercolorsrc", arg, bordercolorsrc)
+ self._set_property("font", arg, font)
+ self._set_property("namelength", arg, namelength)
+ self._set_property("namelengthsrc", arg, namelengthsrc)
+ self._process_kwargs(**dict(arg, **kwargs))
+ self._skip_invalid = False
diff --git a/venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/node/_line.py b/venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/node/_line.py
new file mode 100644
index 0000000..d3855f2
--- /dev/null
+++ b/venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/node/_line.py
@@ -0,0 +1,160 @@
+# --- THIS FILE IS AUTO-GENERATED ---
+# Modifications will be overwitten the next time code generation run.
+
+from plotly.basedatatypes import BaseTraceHierarchyType as _BaseTraceHierarchyType
+import copy as _copy
+
+
+class Line(_BaseTraceHierarchyType):
+ _parent_path_str = "sankey.node"
+ _path_str = "sankey.node.line"
+ _valid_props = {"color", "colorsrc", "width", "widthsrc"}
+
+ @property
+ def color(self):
+ """
+ Sets the color of the `line` around each `node`.
+
+ The 'color' property is a color and may be specified as:
+ - A hex string (e.g. '#ff0000')
+ - An rgb/rgba string (e.g. 'rgb(255,0,0)')
+ - An hsl/hsla string (e.g. 'hsl(0,100%,50%)')
+ - An hsv/hsva string (e.g. 'hsv(0,100%,100%)')
+ - A named CSS color: see https://plotly.com/python/css-colors/ for a list
+ - A list or array of any of the above
+
+ Returns
+ -------
+ str|numpy.ndarray
+ """
+ return self["color"]
+
+ @color.setter
+ def color(self, val):
+ self["color"] = val
+
+ @property
+ def colorsrc(self):
+ """
+ Sets the source reference on Chart Studio Cloud for `color`.
+
+ The 'colorsrc' property must be specified as a string or
+ as a plotly.grid_objs.Column object
+
+ Returns
+ -------
+ str
+ """
+ return self["colorsrc"]
+
+ @colorsrc.setter
+ def colorsrc(self, val):
+ self["colorsrc"] = val
+
+ @property
+ def width(self):
+ """
+ Sets the width (in px) of the `line` around each `node`.
+
+ The 'width' property is a number and may be specified as:
+ - An int or float in the interval [0, inf]
+ - A tuple, list, or one-dimensional numpy array of the above
+
+ Returns
+ -------
+ int|float|numpy.ndarray
+ """
+ return self["width"]
+
+ @width.setter
+ def width(self, val):
+ self["width"] = val
+
+ @property
+ def widthsrc(self):
+ """
+ Sets the source reference on Chart Studio Cloud for `width`.
+
+ The 'widthsrc' property must be specified as a string or
+ as a plotly.grid_objs.Column object
+
+ Returns
+ -------
+ str
+ """
+ return self["widthsrc"]
+
+ @widthsrc.setter
+ def widthsrc(self, val):
+ self["widthsrc"] = val
+
+ @property
+ def _prop_descriptions(self):
+ return """\
+ color
+ Sets the color of the `line` around each `node`.
+ colorsrc
+ Sets the source reference on Chart Studio Cloud for
+ `color`.
+ width
+ Sets the width (in px) of the `line` around each
+ `node`.
+ widthsrc
+ Sets the source reference on Chart Studio Cloud for
+ `width`.
+ """
+
+ def __init__(
+ self, arg=None, color=None, colorsrc=None, width=None, widthsrc=None, **kwargs
+ ):
+ """
+ Construct a new Line object
+
+ Parameters
+ ----------
+ arg
+ dict of properties compatible with this constructor or
+ an instance of
+ :class:`plotly.graph_objs.sankey.node.Line`
+ color
+ Sets the color of the `line` around each `node`.
+ colorsrc
+ Sets the source reference on Chart Studio Cloud for
+ `color`.
+ width
+ Sets the width (in px) of the `line` around each
+ `node`.
+ widthsrc
+ Sets the source reference on Chart Studio Cloud for
+ `width`.
+
+ Returns
+ -------
+ Line
+ """
+ super().__init__("line")
+ if "_parent" in kwargs:
+ self._parent = kwargs["_parent"]
+ return
+
+ if arg is None:
+ arg = {}
+ elif isinstance(arg, self.__class__):
+ arg = arg.to_plotly_json()
+ elif isinstance(arg, dict):
+ arg = _copy.copy(arg)
+ else:
+ raise ValueError("""\
+The first argument to the plotly.graph_objs.sankey.node.Line
+constructor must be a dict or
+an instance of :class:`plotly.graph_objs.sankey.node.Line`""")
+
+ self._skip_invalid = kwargs.pop("skip_invalid", False)
+ self._validate = kwargs.pop("_validate", True)
+
+ self._set_property("color", arg, color)
+ self._set_property("colorsrc", arg, colorsrc)
+ self._set_property("width", arg, width)
+ self._set_property("widthsrc", arg, widthsrc)
+ self._process_kwargs(**dict(arg, **kwargs))
+ self._skip_invalid = False
diff --git a/venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/node/hoverlabel/__init__.py b/venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/node/hoverlabel/__init__.py
new file mode 100644
index 0000000..56f600d
--- /dev/null
+++ b/venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/node/hoverlabel/__init__.py
@@ -0,0 +1,9 @@
+import sys
+from typing import TYPE_CHECKING
+
+if TYPE_CHECKING:
+ from ._font import Font
+else:
+ from _plotly_utils.importers import relative_import
+
+ __all__, __getattr__, __dir__ = relative_import(__name__, [], ["._font.Font"])
diff --git a/venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/node/hoverlabel/_font.py b/venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/node/hoverlabel/_font.py
new file mode 100644
index 0000000..545db57
--- /dev/null
+++ b/venv/lib/python3.8/site-packages/plotly/graph_objs/sankey/node/hoverlabel/_font.py
@@ -0,0 +1,587 @@
+# --- THIS FILE IS AUTO-GENERATED ---
+# Modifications will be overwitten the next time code generation run.
+
+from plotly.basedatatypes import BaseTraceHierarchyType as _BaseTraceHierarchyType
+import copy as _copy
+
+
+class Font(_BaseTraceHierarchyType):
+ _parent_path_str = "sankey.node.hoverlabel"
+ _path_str = "sankey.node.hoverlabel.font"
+ _valid_props = {
+ "color",
+ "colorsrc",
+ "family",
+ "familysrc",
+ "lineposition",
+ "linepositionsrc",
+ "shadow",
+ "shadowsrc",
+ "size",
+ "sizesrc",
+ "style",
+ "stylesrc",
+ "textcase",
+ "textcasesrc",
+ "variant",
+ "variantsrc",
+ "weight",
+ "weightsrc",
+ }
+
+ @property
+ def color(self):
+ """
+ The 'color' property is a color and may be specified as:
+ - A hex string (e.g. '#ff0000')
+ - An rgb/rgba string (e.g. 'rgb(255,0,0)')
+ - An hsl/hsla string (e.g. 'hsl(0,100%,50%)')
+ - An hsv/hsva string (e.g. 'hsv(0,100%,100%)')
+ - A named CSS color: see https://plotly.com/python/css-colors/ for a list
+ - A list or array of any of the above
+
+ Returns
+ -------
+ str|numpy.ndarray
+ """
+ return self["color"]
+
+ @color.setter
+ def color(self, val):
+ self["color"] = val
+
+ @property
+ def colorsrc(self):
+ """
+ Sets the source reference on Chart Studio Cloud for `color`.
+
+ The 'colorsrc' property must be specified as a string or
+ as a plotly.grid_objs.Column object
+
+ Returns
+ -------
+ str
+ """
+ return self["colorsrc"]
+
+ @colorsrc.setter
+ def colorsrc(self, val):
+ self["colorsrc"] = val
+
+ @property
+ def family(self):
+ """
+ HTML font family - the typeface that will be applied by the web
+ browser. The web browser can only apply a font if it is
+ available on the system where it runs. Provide multiple font
+ families, separated by commas, to indicate the order in which
+ to apply fonts if they aren't available.
+
+ The 'family' property is a string and must be specified as:
+ - A non-empty string
+ - A tuple, list, or one-dimensional numpy array of the above
+
+ Returns
+ -------
+ str|numpy.ndarray
+ """
+ return self["family"]
+
+ @family.setter
+ def family(self, val):
+ self["family"] = val
+
+ @property
+ def familysrc(self):
+ """
+ Sets the source reference on Chart Studio Cloud for `family`.
+
+ The 'familysrc' property must be specified as a string or
+ as a plotly.grid_objs.Column object
+
+ Returns
+ -------
+ str
+ """
+ return self["familysrc"]
+
+ @familysrc.setter
+ def familysrc(self, val):
+ self["familysrc"] = val
+
+ @property
+ def lineposition(self):
+ """
+ Sets the kind of decoration line(s) with text, such as an
+ "under", "over" or "through" as well as combinations e.g.
+ "under+over", etc.
+
+ The 'lineposition' property is a flaglist and may be specified
+ as a string containing:
+ - Any combination of ['under', 'over', 'through'] joined with '+' characters
+ (e.g. 'under+over')
+ OR exactly one of ['none'] (e.g. 'none')
+ - A list or array of the above
+
+ Returns
+ -------
+ Any|numpy.ndarray
+ """
+ return self["lineposition"]
+
+ @lineposition.setter
+ def lineposition(self, val):
+ self["lineposition"] = val
+
+ @property
+ def linepositionsrc(self):
+ """
+ Sets the source reference on Chart Studio Cloud for
+ `lineposition`.
+
+ The 'linepositionsrc' property must be specified as a string or
+ as a plotly.grid_objs.Column object
+
+ Returns
+ -------
+ str
+ """
+ return self["linepositionsrc"]
+
+ @linepositionsrc.setter
+ def linepositionsrc(self, val):
+ self["linepositionsrc"] = val
+
+ @property
+ def shadow(self):
+ """
+ Sets the shape and color of the shadow behind text. "auto"
+ places minimal shadow and applies contrast text font color. See
+ https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow
+ for additional options.
+
+ The 'shadow' property is a string and must be specified as:
+ - A string
+ - A number that will be converted to a string
+ - A tuple, list, or one-dimensional numpy array of the above
+
+ Returns
+ -------
+ str|numpy.ndarray
+ """
+ return self["shadow"]
+
+ @shadow.setter
+ def shadow(self, val):
+ self["shadow"] = val
+
+ @property
+ def shadowsrc(self):
+ """
+ Sets the source reference on Chart Studio Cloud for `shadow`.
+
+ The 'shadowsrc' property must be specified as a string or
+ as a plotly.grid_objs.Column object
+
+ Returns
+ -------
+ str
+ """
+ return self["shadowsrc"]
+
+ @shadowsrc.setter
+ def shadowsrc(self, val):
+ self["shadowsrc"] = val
+
+ @property
+ def size(self):
+ """
+ The 'size' property is a number and may be specified as:
+ - An int or float in the interval [1, inf]
+ - A tuple, list, or one-dimensional numpy array of the above
+
+ Returns
+ -------
+ int|float|numpy.ndarray
+ """
+ return self["size"]
+
+ @size.setter
+ def size(self, val):
+ self["size"] = val
+
+ @property
+ def sizesrc(self):
+ """
+ Sets the source reference on Chart Studio Cloud for `size`.
+
+ The 'sizesrc' property must be specified as a string or
+ as a plotly.grid_objs.Column object
+
+ Returns
+ -------
+ str
+ """
+ return self["sizesrc"]
+
+ @sizesrc.setter
+ def sizesrc(self, val):
+ self["sizesrc"] = val
+
+ @property
+ def style(self):
+ """
+ Sets whether a font should be styled with a normal or italic
+ face from its family.
+
+ The 'style' property is an enumeration that may be specified as:
+ - One of the following enumeration values:
+ ['normal', 'italic']
+ - A tuple, list, or one-dimensional numpy array of the above
+
+ Returns
+ -------
+ Any|numpy.ndarray
+ """
+ return self["style"]
+
+ @style.setter
+ def style(self, val):
+ self["style"] = val
+
+ @property
+ def stylesrc(self):
+ """
+ Sets the source reference on Chart Studio Cloud for `style`.
+
+ The 'stylesrc' property must be specified as a string or
+ as a plotly.grid_objs.Column object
+
+ Returns
+ -------
+ str
+ """
+ return self["stylesrc"]
+
+ @stylesrc.setter
+ def stylesrc(self, val):
+ self["stylesrc"] = val
+
+ @property
+ def textcase(self):
+ """
+ Sets capitalization of text. It can be used to make text appear
+ in all-uppercase or all-lowercase, or with each word
+ capitalized.
+
+ The 'textcase' property is an enumeration that may be specified as:
+ - One of the following enumeration values:
+ ['normal', 'word caps', 'upper', 'lower']
+ - A tuple, list, or one-dimensional numpy array of the above
+
+ Returns
+ -------
+ Any|numpy.ndarray
+ """
+ return self["textcase"]
+
+ @textcase.setter
+ def textcase(self, val):
+ self["textcase"] = val
+
+ @property
+ def textcasesrc(self):
+ """
+ Sets the source reference on Chart Studio Cloud for `textcase`.
+
+ The 'textcasesrc' property must be specified as a string or
+ as a plotly.grid_objs.Column object
+
+ Returns
+ -------
+ str
+ """
+ return self["textcasesrc"]
+
+ @textcasesrc.setter
+ def textcasesrc(self, val):
+ self["textcasesrc"] = val
+
+ @property
+ def variant(self):
+ """
+ Sets the variant of the font.
+
+ The 'variant' property is an enumeration that may be specified as:
+ - One of the following enumeration values:
+ ['normal', 'small-caps', 'all-small-caps',
+ 'all-petite-caps', 'petite-caps', 'unicase']
+ - A tuple, list, or one-dimensional numpy array of the above
+
+ Returns
+ -------
+ Any|numpy.ndarray
+ """
+ return self["variant"]
+
+ @variant.setter
+ def variant(self, val):
+ self["variant"] = val
+
+ @property
+ def variantsrc(self):
+ """
+ Sets the source reference on Chart Studio Cloud for `variant`.
+
+ The 'variantsrc' property must be specified as a string or
+ as a plotly.grid_objs.Column object
+
+ Returns
+ -------
+ str
+ """
+ return self["variantsrc"]
+
+ @variantsrc.setter
+ def variantsrc(self, val):
+ self["variantsrc"] = val
+
+ @property
+ def weight(self):
+ """
+ Sets the weight (or boldness) of the font.
+
+ The 'weight' property is a integer and may be specified as:
+ - An int (or float that will be cast to an int)
+ in the interval [1, 1000]
+ OR exactly one of ['normal', 'bold'] (e.g. 'bold')
+ - A tuple, list, or one-dimensional numpy array of the above
+
+ Returns
+ -------
+ int|numpy.ndarray
+ """
+ return self["weight"]
+
+ @weight.setter
+ def weight(self, val):
+ self["weight"] = val
+
+ @property
+ def weightsrc(self):
+ """
+ Sets the source reference on Chart Studio Cloud for `weight`.
+
+ The 'weightsrc' property must be specified as a string or
+ as a plotly.grid_objs.Column object
+
+ Returns
+ -------
+ str
+ """
+ return self["weightsrc"]
+
+ @weightsrc.setter
+ def weightsrc(self, val):
+ self["weightsrc"] = val
+
+ @property
+ def _prop_descriptions(self):
+ return """\
+ color
+
+ colorsrc
+ Sets the source reference on Chart Studio Cloud for
+ `color`.
+ family
+ HTML font family - the typeface that will be applied by
+ the web browser. The web browser can only apply a font
+ if it is available on the system where it runs. Provide
+ multiple font families, separated by commas, to
+ indicate the order in which to apply fonts if they
+ aren't available.
+ familysrc
+ Sets the source reference on Chart Studio Cloud for
+ `family`.
+ lineposition
+ Sets the kind of decoration line(s) with text, such as
+ an "under", "over" or "through" as well as combinations
+ e.g. "under+over", etc.
+ linepositionsrc
+ Sets the source reference on Chart Studio Cloud for
+ `lineposition`.
+ shadow
+ Sets the shape and color of the shadow behind text.
+ "auto" places minimal shadow and applies contrast text
+ font color. See https://developer.mozilla.org/en-
+ US/docs/Web/CSS/text-shadow for additional options.
+ shadowsrc
+ Sets the source reference on Chart Studio Cloud for
+ `shadow`.
+ size
+
+ sizesrc
+ Sets the source reference on Chart Studio Cloud for
+ `size`.
+ style
+ Sets whether a font should be styled with a normal or
+ italic face from its family.
+ stylesrc
+ Sets the source reference on Chart Studio Cloud for
+ `style`.
+ textcase
+ Sets capitalization of text. It can be used to make
+ text appear in all-uppercase or all-lowercase, or with
+ each word capitalized.
+ textcasesrc
+ Sets the source reference on Chart Studio Cloud for
+ `textcase`.
+ variant
+ Sets the variant of the font.
+ variantsrc
+ Sets the source reference on Chart Studio Cloud for
+ `variant`.
+ weight
+ Sets the weight (or boldness) of the font.
+ weightsrc
+ Sets the source reference on Chart Studio Cloud for
+ `weight`.
+ """
+
+ def __init__(
+ self,
+ arg=None,
+ color=None,
+ colorsrc=None,
+ family=None,
+ familysrc=None,
+ lineposition=None,
+ linepositionsrc=None,
+ shadow=None,
+ shadowsrc=None,
+ size=None,
+ sizesrc=None,
+ style=None,
+ stylesrc=None,
+ textcase=None,
+ textcasesrc=None,
+ variant=None,
+ variantsrc=None,
+ weight=None,
+ weightsrc=None,
+ **kwargs,
+ ):
+ """
+ Construct a new Font object
+
+ Sets the font used in hover labels.
+
+ Parameters
+ ----------
+ arg
+ dict of properties compatible with this constructor or
+ an instance of
+ :class:`plotly.graph_objs.sankey.node.hoverlabel.Font`
+ color
+
+ colorsrc
+ Sets the source reference on Chart Studio Cloud for
+ `color`.
+ family
+ HTML font family - the typeface that will be applied by
+ the web browser. The web browser can only apply a font
+ if it is available on the system where it runs. Provide
+ multiple font families, separated by commas, to
+ indicate the order in which to apply fonts if they
+ aren't available.
+ familysrc
+ Sets the source reference on Chart Studio Cloud for
+ `family`.
+ lineposition
+ Sets the kind of decoration line(s) with text, such as
+ an "under", "over" or "through" as well as combinations
+ e.g. "under+over", etc.
+ linepositionsrc
+ Sets the source reference on Chart Studio Cloud for
+ `lineposition`.
+ shadow
+ Sets the shape and color of the shadow behind text.
+ "auto" places minimal shadow and applies contrast text
+ font color. See https://developer.mozilla.org/en-
+ US/docs/Web/CSS/text-shadow for additional options.
+ shadowsrc
+ Sets the source reference on Chart Studio Cloud for
+ `shadow`.
+ size
+
+ sizesrc
+ Sets the source reference on Chart Studio Cloud for
+ `size`.
+ style
+ Sets whether a font should be styled with a normal or
+ italic face from its family.
+ stylesrc
+ Sets the source reference on Chart Studio Cloud for
+ `style`.
+ textcase
+ Sets capitalization of text. It can be used to make
+ text appear in all-uppercase or all-lowercase, or with
+ each word capitalized.
+ textcasesrc
+ Sets the source reference on Chart Studio Cloud for
+ `textcase`.
+ variant
+ Sets the variant of the font.
+ variantsrc
+ Sets the source reference on Chart Studio Cloud for
+ `variant`.
+ weight
+ Sets the weight (or boldness) of the font.
+ weightsrc
+ Sets the source reference on Chart Studio Cloud for
+ `weight`.
+
+ Returns
+ -------
+ Font
+ """
+ super().__init__("font")
+ if "_parent" in kwargs:
+ self._parent = kwargs["_parent"]
+ return
+
+ if arg is None:
+ arg = {}
+ elif isinstance(arg, self.__class__):
+ arg = arg.to_plotly_json()
+ elif isinstance(arg, dict):
+ arg = _copy.copy(arg)
+ else:
+ raise ValueError("""\
+The first argument to the plotly.graph_objs.sankey.node.hoverlabel.Font
+constructor must be a dict or
+an instance of :class:`plotly.graph_objs.sankey.node.hoverlabel.Font`""")
+
+ self._skip_invalid = kwargs.pop("skip_invalid", False)
+ self._validate = kwargs.pop("_validate", True)
+
+ self._set_property("color", arg, color)
+ self._set_property("colorsrc", arg, colorsrc)
+ self._set_property("family", arg, family)
+ self._set_property("familysrc", arg, familysrc)
+ self._set_property("lineposition", arg, lineposition)
+ self._set_property("linepositionsrc", arg, linepositionsrc)
+ self._set_property("shadow", arg, shadow)
+ self._set_property("shadowsrc", arg, shadowsrc)
+ self._set_property("size", arg, size)
+ self._set_property("sizesrc", arg, sizesrc)
+ self._set_property("style", arg, style)
+ self._set_property("stylesrc", arg, stylesrc)
+ self._set_property("textcase", arg, textcase)
+ self._set_property("textcasesrc", arg, textcasesrc)
+ self._set_property("variant", arg, variant)
+ self._set_property("variantsrc", arg, variantsrc)
+ self._set_property("weight", arg, weight)
+ self._set_property("weightsrc", arg, weightsrc)
+ self._process_kwargs(**dict(arg, **kwargs))
+ self._skip_invalid = False