forked from plotly/plotly.py
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path_marker.py
179 lines (152 loc) · 5 KB
/
_marker.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
from plotly.basedatatypes import BaseTraceHierarchyType
import copy
class Marker(BaseTraceHierarchyType):
# colors
# ------
@property
def colors(self):
"""
Sets the color of each sector of this pie chart. If not
specified, the default trace color set is used to pick the
sector colors.
The 'colors' property is an array that may be specified as a tuple,
list, numpy array, or pandas Series
Returns
-------
numpy.ndarray
"""
return self['colors']
@colors.setter
def colors(self, val):
self['colors'] = val
# colorssrc
# ---------
@property
def colorssrc(self):
"""
Sets the source reference on plot.ly for colors .
The 'colorssrc' property must be specified as a string or
as a plotly.grid_objs.Column object
Returns
-------
str
"""
return self['colorssrc']
@colorssrc.setter
def colorssrc(self, val):
self['colorssrc'] = val
# line
# ----
@property
def line(self):
"""
The 'line' property is an instance of Line
that may be specified as:
- An instance of plotly.graph_objs.pie.marker.Line
- A dict of string/value properties that will be passed
to the Line constructor
Supported dict properties:
color
Sets the color of the line enclosing each
sector.
colorsrc
Sets the source reference on plot.ly for color
.
width
Sets the width (in px) of the line enclosing
each sector.
widthsrc
Sets the source reference on plot.ly for width
.
Returns
-------
plotly.graph_objs.pie.marker.Line
"""
return self['line']
@line.setter
def line(self, val):
self['line'] = val
# property parent name
# --------------------
@property
def _parent_path_str(self):
return 'pie'
# Self properties description
# ---------------------------
@property
def _prop_descriptions(self):
return """\
colors
Sets the color of each sector of this pie chart. If not
specified, the default trace color set is used to pick
the sector colors.
colorssrc
Sets the source reference on plot.ly for colors .
line
plotly.graph_objs.pie.marker.Line instance or dict with
compatible properties
"""
def __init__(
self, arg=None, colors=None, colorssrc=None, line=None, **kwargs
):
"""
Construct a new Marker object
Parameters
----------
arg
dict of properties compatible with this constructor or
an instance of plotly.graph_objs.pie.Marker
colors
Sets the color of each sector of this pie chart. If not
specified, the default trace color set is used to pick
the sector colors.
colorssrc
Sets the source reference on plot.ly for colors .
line
plotly.graph_objs.pie.marker.Line instance or dict with
compatible properties
Returns
-------
Marker
"""
super(Marker, self).__init__('marker')
# Validate arg
# ------------
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.pie.Marker
constructor must be a dict or
an instance of plotly.graph_objs.pie.Marker"""
)
# Handle skip_invalid
# -------------------
self._skip_invalid = kwargs.pop('skip_invalid', False)
# Import validators
# -----------------
from plotly.validators.pie import (marker as v_marker)
# Initialize validators
# ---------------------
self._validators['colors'] = v_marker.ColorsValidator()
self._validators['colorssrc'] = v_marker.ColorssrcValidator()
self._validators['line'] = v_marker.LineValidator()
# Populate data dict with properties
# ----------------------------------
_v = arg.pop('colors', None)
self['colors'] = colors if colors is not None else _v
_v = arg.pop('colorssrc', None)
self['colorssrc'] = colorssrc if colorssrc is not None else _v
_v = arg.pop('line', None)
self['line'] = line if line is not None else _v
# Process unknown kwargs
# ----------------------
self._process_kwargs(**dict(arg, **kwargs))
# Reset skip_invalid
# ------------------
self._skip_invalid = False