Skip to content

Commit

Permalink
allow to plot to any dir, and suggest filename extension
Browse files Browse the repository at this point in the history
  • Loading branch information
relleums committed Apr 24, 2024
1 parent b34f739 commit 2d8de27
Show file tree
Hide file tree
Showing 4 changed files with 35 additions and 16 deletions.
15 changes: 11 additions & 4 deletions plenopy/trigger/geometry.py
Original file line number Diff line number Diff line change
Expand Up @@ -200,6 +200,10 @@ def init_summation_statistics(trigger_geometry):
return stats


def suggested_filename_extension():
return ".trigger_geometry.zip"


def write(trigger_geometry, path):
assert_trigger_geometry_consistent(trigger_geometry=trigger_geometry)
tg = trigger_geometry
Expand Down Expand Up @@ -288,14 +292,16 @@ def _zread(zin, name_without_extension, dtype):
return np.frombuffer(payload, dtype=dtype)


def plot(path):
def plot(trigger_geometry_path, out_dir):
"""
Try to plot the geometry of the sum-trigger.
Parameters
----------
path : str
Directory written by plenopy.trigger.geometry.write()
trigger_geometry_path : str
Zipfile written by plenopy.trigger.geometry.write().
out_dir : str
Write figures to this directory.
"""
try:
import subprocess
Expand All @@ -312,7 +318,8 @@ def plot(path):
[
"python",
plenopy_trigger_script_plot_path,
path,
trigger_geometry_path,
out_dir,
]
)
except:
Expand Down
23 changes: 14 additions & 9 deletions plenopy/trigger/scripts/plot.py
Original file line number Diff line number Diff line change
Expand Up @@ -9,20 +9,25 @@
prog="plenopy/trigger/scripts/plot.py",
description=("Plot the trigger's geometry of the plenoscope"),
)

parser.add_argument(
"trigger_geometry_path",
metavar="PATH",
type=str,
help="directory containing the trigger's geometry.",
help="Zipfile containing the trigger's geometry.",
)
parser.add_argument(
"out_dir",
metavar="PATH",
type=str,
help="Directory to write figures to.",
)

args = parser.parse_args()

trg_geom_dir = os.path.abspath(args.trigger_geometry_path)
plot_dir = os.path.join(trg_geom_dir, "plot")
trg_geom_path = os.path.abspath(args.trigger_geometry_path)
out_dir = os.path.abspath(args.out_dir)

os.makedirs(plot_dir, exist_ok=True)
os.makedirs(out_dir, exist_ok=True)

MATPLOTLIB_RCPARAMS = {
"mathtext.fontset": "cm",
Expand All @@ -33,7 +38,7 @@
splt.matplotlib.rcParams.update(MATPLOTLIB_RCPARAMS)


trigger_geometry = plenopy.trigger.geometry.read(trg_geom_dir)
trigger_geometry = plenopy.trigger.geometry.read(trg_geom_path)
trigger_summation_statistics = (
plenopy.trigger.geometry.init_summation_statistics(
trigger_geometry=trigger_geometry
Expand Down Expand Up @@ -66,7 +71,7 @@
ax.set_ylabel(r"$c_y\,/\,1^{\circ}$")
fig.savefig(
os.path.join(
plot_dir,
out_dir,
"focus_{:06d}_lixel_in_pixel_overview.jpg".format(focus),
)
)
Expand All @@ -89,7 +94,7 @@
ax.grid(color="k", linestyle="-", linewidth=0.66, alpha=0.1)
fig.savefig(
os.path.join(
plot_dir,
out_dir,
"focus_{:06d}_lixel_in_pixel_histogram.jpg".format(focus),
)
)
Expand All @@ -112,7 +117,7 @@
ax.grid(color="k", linestyle="-", linewidth=0.66, alpha=0.1)
fig.savefig(
os.path.join(
plot_dir,
out_dir,
"focus_{:06d}_pixel_in_lixel_histogram.jpg".format(focus),
)
)
Expand Down
11 changes: 9 additions & 2 deletions plenopy/trigger/tests/test_trigger.py
Original file line number Diff line number Diff line change
Expand Up @@ -138,11 +138,18 @@ def test_io():

with tempfile.TemporaryDirectory(prefix="test_plenopy_trigger") as tmp:
pl.trigger.geometry.write(
trigger_geometry=tg, path=os.path.join(tmp, "trigger_geometry.zip")
trigger_geometry=tg,
path=os.path.join(
tmp,
"dummy" + pl.trigger.geometry.suggested_filename_extension(),
),
)

tg_back = pl.trigger.geometry.read(
path=os.path.join(tmp, "trigger_geometry.zip")
path=os.path.join(
tmp,
"dummy" + pl.trigger.geometry.suggested_filename_extension(),
)
)

assert tg["image"]["number_pixel"] == tg_back["image"]["number_pixel"]
Expand Down
2 changes: 1 addition & 1 deletion plenopy/version.py
Original file line number Diff line number Diff line change
@@ -1 +1 @@
__version__ = "0.2.9"
__version__ = "0.2.10"

0 comments on commit 2d8de27

Please sign in to comment.