def plot_sat_cmd_aoi(self, sats_ids_list, aoi_curves_by_sat_id, plot_start, plot_end, base_time, plot_title='Satellite CMD Uplink AoI', plot_size_inches=(12, 12), show=False, fig_name='plots/sat_aoi_plot.pdf'): plot_params = {} plot_params['plot_start_dt'] = plot_start plot_params['plot_end_dt'] = plot_end plot_params['base_time_dt'] = base_time plot_params['plot_title'] = plot_title plot_params['plot_size_inches'] = plot_size_inches plot_params['show'] = show plot_params['fig_name'] = fig_name plot_params['plot_fig_extension'] = self.plot_fig_extension plot_params['ylabel'] = 'Satellite Index' plot_params['time_units'] = self.time_units plot_params[ 'plot_bound_min_aoi_hours'] = self.cmd_aoi_metrics_plot_params[ 'plot_bound_min_aoi_hours'] plot_params[ 'plot_bound_max_aoi_hours'] = self.cmd_aoi_metrics_plot_params[ 'plot_bound_max_aoi_hours'] pltl.plot_aoi_by_item(sats_ids_list, aoi_curves_by_sat_id, plot_params)
def plot_obs_aoi(self, targ_ids_list, aoi_curves_by_targ_id, plot_start, plot_end, base_time, plot_title='Observation Target AoI', plot_size_inches=(12, 12), show=False, fig_name='plots/obs_aoi_plot.pdf'): plot_params = {} plot_params['plot_start_dt'] = plot_start plot_params['plot_end_dt'] = plot_end plot_params['base_time_dt'] = base_time plot_params['plot_title'] = plot_title plot_params['plot_size_inches'] = plot_size_inches plot_params['show'] = show plot_params['fig_name'] = fig_name plot_params['plot_fig_extension'] = self.plot_fig_extension plot_params['ylabel'] = 'Target Index' plot_params['time_units'] = self.time_units plot_params[ 'plot_bound_min_aoi_hours'] = self.obs_aoi_metrics_plot_params[ 'plot_bound_min_aoi_hours'] plot_params[ 'plot_bound_max_aoi_hours'] = self.obs_aoi_metrics_plot_params[ 'plot_bound_max_aoi_hours'] pltl.plot_aoi_by_item(targ_ids_list, aoi_curves_by_targ_id, plot_params)
def plot_sat_cmd_aoi(self, sat_ids_list, aoi_curves_by_sat_id, all_downlink_winds=[], gp_replan_freq=None): plot_params = {} plot_params['plot_start_dt'] = self.plots_start_dt plot_params['plot_end_dt'] = self.plots_end_dt plot_params['base_time_dt'] = self.plots_base_dt plot_params['plot_size_inches'] = (18, 9) plot_params['show'] = False plot_params['plot_title'] = 'CIRCINUS Sim: Satellite CMD Uplink AoI' plot_params[ 'fig_name'] = self.output_path + 'plots/csim_sat_cmd_aoi.pdf' plot_params['plot_fig_extension'] = 'pdf' plot_params['ylabel'] = 'Satellite Index,\nAoI (hours)\n' plot_params['time_units'] = self.input_plot_params['sat_cmd_aoi_plot'][ 'x_axis_time_units'] """ plot_params['plot_bound_min_aoi_hours'] = self.input_plot_params['sat_cmd_aoi_plot']['plot_bound_min_aoi_hours'] plot_params['plot_bound_max_aoi_hours'] = self.input_plot_params['sat_cmd_aoi_plot']['plot_bound_max_aoi_hours'] """ plot_params['plot_bound_min_aoi_hours'] = 0 plot_params['plot_bound_max_aoi_hours'] = max( [max(x['y']) for x in aoi_curves_by_sat_id.values()]) plot_params['include_legend'] = False pltl.plot_aoi_by_item(sat_ids_list, aoi_curves_by_sat_id, plot_params, all_downlink_winds, gp_replan_freq)
def plot_sat_tlm_aoi(self, sat_ids_list, aoi_curves_by_sat_id): plot_params = {} plot_params['plot_start_dt'] = self.plots_start_dt plot_params['plot_end_dt'] = self.plots_end_dt plot_params['base_time_dt'] = self.plots_base_dt plot_params['plot_title'] = 'CIRCINUS Sim: Satellite TLM Downlink AoI' plot_params['plot_size_inches'] = (18, 9) plot_params['show'] = False plot_params[ 'fig_name'] = self.output_path + 'plots/csim_sat_tlm_aoi.pdf' plot_params['plot_fig_extension'] = 'pdf' plot_params['ylabel'] = 'Satellite Index,\nAoI (hours)\n' plot_params['time_units'] = self.input_plot_params['sat_tlm_aoi_plot'][ 'x_axis_time_units'] plot_params['plot_bound_min_aoi_hours'] = self.input_plot_params[ 'sat_tlm_aoi_plot']['plot_bound_min_aoi_hours'] plot_params['plot_bound_max_aoi_hours'] = self.input_plot_params[ 'sat_tlm_aoi_plot']['plot_bound_max_aoi_hours'] plot_params['include_legend'] = False pltl.plot_aoi_by_item(sat_ids_list, aoi_curves_by_sat_id, plot_params)
def plot_obs_aoi_w_routing(self, targ_ids_list, aoi_curves_by_targ_id): plot_params = {} plot_params['plot_start_dt'] = self.plots_start_dt plot_params['plot_end_dt'] = self.plots_end_dt plot_params['base_time_dt'] = self.plots_base_dt plot_params[ 'plot_title'] = 'CIRCINUS Sim: Executed Observation Target AoI, with routing' plot_params['plot_size_inches'] = (18, 9) plot_params['show'] = False plot_params[ 'fig_name'] = self.output_path + 'plots/csim_obs_aoi_routing.pdf' plot_params['plot_fig_extension'] = 'pdf' plot_params['ylabel'] = 'Target Index,\nAoI (hours)\n' plot_params['time_units'] = self.input_plot_params['obs_aoi_plot'][ 'x_axis_time_units'] plot_params['plot_bound_min_aoi_hours'] = self.input_plot_params[ 'obs_aoi_plot']['plot_bound_min_aoi_hours'] plot_params['plot_bound_max_aoi_hours'] = self.input_plot_params[ 'obs_aoi_plot']['plot_bound_max_aoi_hours'] plot_params['include_legend'] = False pltl.plot_aoi_by_item(targ_ids_list, aoi_curves_by_targ_id, plot_params)