diff --git a/model_tools/parameters_storage.py b/model_tools/parameters_storage.py
index c1df67fce4743a9d8fc87879aa0621b9e864b341..3b78f5ba0aeef6cba0f105b1403c68dc74b4cc4d 100644
--- a/model_tools/parameters_storage.py
+++ b/model_tools/parameters_storage.py
@@ -28,13 +28,26 @@ class ParametersStorage(NestedMKDict):
             key = '.'.join(key)
             labels.setdefault('paths', []).append(key)
 
-    def plot(self) -> None:
+    def plot(
+        self,
+        *args,
+        close: bool=True,
+        show: bool=True,
+        **kwargs
+    ) -> None:
         from dagflow.plot import plot_auto
+        if close:
+            from matplotlib.pyplot import close
+        if show:
+            from matplotlib.pyplot import show
         for key, value in self.walkitems():
             if not isinstance(value, Output):
                 continue
 
-            plot_auto(value)
+            plot_auto(value, *args, **kwargs)
+
+            if show: show()
+            if close: close()
 
     def to_list(self, **kwargs) -> list:
         return self.visit(ParametersVisitor(kwargs)).data_list
diff --git a/models/dayabay_v0.py b/models/dayabay_v0.py
index 6b5e8c218406976167cfb464d9f4d8e0e0181c28..ea27d1c59872614e3e557baf2ee2a9bf520a11d1 100644
--- a/models/dayabay_v0.py
+++ b/models/dayabay_v0.py
@@ -1,6 +1,5 @@
 from dagflow.bundles.load_parameters import load_parameters
 from pathlib import Path
-from matplotlib.pyplot import show
 
 from dagflow.graph import Graph
 from dagflow.graphviz import savegraph
@@ -63,8 +62,7 @@ def model_dayabay_v0():
         outputs['edges.energy_common']= (energy_edges:=Array("energy_edges", linspace(0, 12, 241)).outputs[0])
 
     storage.read_paths()
-    storage('outputs').plot()
-    show()
+    storage('outputs').plot(close=False, show=True)
 
     storage['parameter.normalized.detector.eres.b_stat'].value = 1
     storage['parameter.normalized.detector.eres.a_nonuniform'].value = 2