Source code for exosim.plots.plotter

import logging
import os

import exosim.plots as plots
from exosim import __version__ as version

[docs]logger = logging.getLogger("exosim")
[docs]def main() -> None: import argparse parser = argparse.ArgumentParser(description="ExoSim {}".format(version)) parser.add_argument( "-i", "--input", dest="input", type=str, required=True, help="Input file to pass", ) parser.add_argument( "-o", "--output", dest="output", type=str, required=True, default=None, help="Output file", ) parser.add_argument( "-f", "--focal_plane", dest="focal", default=False, required=False, help="run to plot the focal plane ", action="store_true", ) parser.add_argument( "-r", "--radiometric", dest="radiometric", default=False, required=False, help="run to plot the radiometric table", action="store_true", ) parser.add_argument( "-s", "--subexposures", dest="subexposures", default=False, required=False, help="run to plot the sub-exposures", action="store_true", ) parser.add_argument( "-n", "--ndrs", dest="ndrs", default=False, required=False, help="run to plot the NDRs plotter", action="store_true", ) parser.add_argument( "-t", "--time_step", dest="time_step", type=int, default=0, required=False, help="focal plane time step to plot ", ) parser.add_argument( "--plot-scale", dest="plot_scale", type=str, default="linear", required=False, help="plot scale. Can be 'linear' or 'dB'. Default is 'linear' ", ) args = parser.parse_args() if args.focal: time = args.time_step scale = args.plot_scale focal_plane_plotter = plots.FocalPlanePlotter(input=args.input) focal_plane_plotter.plot_focal_plane(time_step=time, scale=scale) fig_name = os.path.join(args.output, "focal_plane_{}.png".format(time)) focal_plane_plotter.save_fig(fig_name) focal_plane_plotter.plot_efficiency() fig_name = os.path.join(args.output, "efficiency.png") focal_plane_plotter.save_fig(fig_name) if args.radiometric: radiometric_plotter = plots.RadiometricPlotter(input=args.input) radiometric_plotter.plot_table() fig_name = os.path.join(args.output, "radiometric.png") radiometric_plotter.save_fig(fig_name) radiometric_plotter.plot_apertures() fig_name = os.path.join(args.output, "apertures.png") radiometric_plotter.save_fig(fig_name) if args.subexposures: sub_exposures_plotter = plots.SubExposuresPlotter(input=args.input) sub_exposures_plotter.plot(args.output) if args.ndrs: ndrs_plotter = plots.NDRsPlotter(input=args.input) ndrs_plotter.plot(args.output)