Skip to content

Commit 51dac64

Browse files
committed
jupyter viz: Allow for custom space drawer
1 parent 242e19f commit 51dac64

File tree

1 file changed

+16
-5
lines changed

1 file changed

+16
-5
lines changed

experimental/jupyter_viz.py

Lines changed: 16 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -136,7 +136,7 @@ def make_user_input(user_input, k, v):
136136

137137

138138
@solara.component
139-
def MesaComponent(viz):
139+
def MesaComponent(viz, space_drawer=None, play_interval=400):
140140
solara.Markdown(viz.name)
141141

142142
# 1. User inputs
@@ -178,7 +178,7 @@ def on_value_play(change):
178178
)
179179
widgets.Play(
180180
value=0,
181-
interval=400,
181+
interval=play_interval,
182182
repeat=True,
183183
show_repeat=False,
184184
on_value=on_value_play,
@@ -196,7 +196,10 @@ def on_value_play(change):
196196

197197
with solara.GridFixed(columns=2):
198198
# 4. Space
199-
make_space(viz)
199+
if space_drawer is None:
200+
make_space(viz)
201+
else:
202+
space_drawer(viz)
200203
# 5. Plots
201204
for i, measure in enumerate(viz.measures):
202205
if callable(measure):
@@ -207,8 +210,16 @@ def on_value_play(change):
207210

208211

209212
def JupyterViz(
210-
model_class, model_params, measures=None, name="Mesa Model", agent_portrayal=None
213+
model_class,
214+
model_params,
215+
measures=None,
216+
name="Mesa Model",
217+
agent_portrayal=None,
218+
space_drawer=None,
219+
play_interval=400,
211220
):
212221
return MesaComponent(
213-
JupyterContainer(model_class, model_params, measures, name, agent_portrayal)
222+
JupyterContainer(model_class, model_params, measures, name, agent_portrayal),
223+
space_drawer=space_drawer,
224+
play_interval=play_interval,
214225
)

0 commit comments

Comments
 (0)