DynamicGridsInteract provides web interfaces for visualising and interacting with simulations from DynamicGrids.jl, and for packages that build on it like Dispersal.jl.
The basic InteractOutput
works in the atom plot pane and Jupyter notebooks,
and also serves as the core component of other outputs. A Mux.jl web server
ServerOutput
and a Blink.jl electron app ElectronOutput
are also
included.
This demo shows the InteractOutput
running it the atom IDE:
To use:
using DynamicGrids, DynamicGridsInteract
output = InteractOutput(init;
ruleset=ruleset,
tspan=1:100,
processor=ColorProcessor()
)
display(output)
Where init
is the initial array(s) for the simulation and ruleset is the
Ruleset
to run in simulations.
To show the interface in the Atom plot pane, run display(output)
.
The interface provides control of the simulation using ModelParameters.jl and Interact.jl via InteractModels.jl.
It will automatically generate sliders for every ModelParameters.Param
parameter in the Ruleset
, given they
additionally have either a range
(an AbstractRange
) or bounds
(a Tuple
) field defined.
See the examples in the InteractModels.jl docs.