Skip to content

Commit 407c5b0

Browse files
authored
Merge pull request #1 from Kitware/state-variable-name
feat(figure): add ability to set state variable name
2 parents 487343d + e09a072 commit 407c5b0

File tree

1 file changed

+7
-4
lines changed

1 file changed

+7
-4
lines changed

trame_plotly/widgets/plotly.py

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -68,9 +68,12 @@ class Figure(AbstractElement):
6868

6969
_next_id = 0
7070

71-
def __init__(self, figure=None, **kwargs):
72-
Figure._next_id += 1
73-
self.__figure_key = f"trame__plotly_{Figure._next_id}"
71+
def __init__(self, figure=None, state_variable_name=None, **kwargs):
72+
if state_variable_name is None:
73+
Figure._next_id += 1
74+
state_variable_name = f"trame__plotly_{Figure._next_id}"
75+
76+
self.__figure_key = state_variable_name
7477
super().__init__(
7578
"vue-plotly",
7679
data=(f"{self.__figure_key}.data",),
@@ -81,7 +84,7 @@ def __init__(self, figure=None, **kwargs):
8184
self.server.enable_module(module)
8285

8386
self.__figure_data = figure
84-
self.server.state[self.__figure_key] = {"data": [], "layout": {}}
87+
self.server.state.setdefault(self.__figure_key, {"data": [], "layout": {}})
8588
self._attr_names += [
8689
"data",
8790
"layout",

0 commit comments

Comments
 (0)