rail.plotting.pz_plotters module

class rail.plotting.pz_plotters.PZPlotterAccuraciesVsTrue(**kwargs)[source]

Bases: RailPlotter

Class to make a plot of the accuracy of several algorithms versus true redshift

Parameters:

kwargs (Any)

config_options: dict[str, StageParameter] = {'delta_cutoff': Parameter(Delta-Z Cutoff for accurary, type: <class 'float'>, default: 0.1 [optional]), 'n_zbins': Parameter(Number of z bins, type: <class 'int'>, default: 150 [optional]), 'name': Parameter(Name for the plotter, type: <class 'str'>, default: 0.0 [optional]), 'z_max': Parameter(Maximum Redshift, type: <class 'float'>, default: 3.0 [optional]), 'z_min': Parameter(Minimum Redshift, type: <class 'float'>, default: 0.0 [optional])}
input_type

alias of RailPZMultiPointEstimateDataset

class rail.plotting.pz_plotters.PZPlotterBiweightStatsVsMag(**kwargs)[source]

Bases: RailPlotter

Class to make a 2D histogram of p(z) point estimates versus true redshift

Parameters:

kwargs (Any)

config_options: dict[str, StageParameter] = {'mag_max': Parameter(Maximum Magnitude, type: <class 'float'>, default: 25 [optional]), 'mag_min': Parameter(Minimum Magnitude, type: <class 'float'>, default: 18 [optional]), 'n_clip': Parameter(Number of sigma cliping for outliers, type: <class 'int'>, default: 3 [optional]), 'n_magbins': Parameter(Number of magnitude bins, type: <class 'int'>, default: 10 [optional]), 'name': Parameter(Name for the plotter, type: <class 'str'>, default: 0.0 [optional])}
input_type

alias of RailPZPointEstimateDataset

process_data(zphot, specz, mag, low=0.01, high=2.0, nclip=3, nbin=101)[source]
Return type:

dict[str, list[float] | ndarray]

Parameters:
  • zphot (ndarray)

  • specz (ndarray)

  • mag (ndarray)

  • low (float)

  • high (float)

  • nclip (int)

  • nbin (int)

class rail.plotting.pz_plotters.PZPlotterBiweightStatsVsRedshift(**kwargs)[source]

Bases: RailPlotter

Class to make a 2D histogram of p(z) point estimates versus true redshift

Parameters:

kwargs (Any)

config_options: dict[str, StageParameter] = {'n_clip': Parameter(Number of sigma cliping for outliers, type: <class 'int'>, default: 3 [optional]), 'n_zbins': Parameter(Number of z bins, type: <class 'int'>, default: 15 [optional]), 'name': Parameter(Name for the plotter, type: <class 'str'>, default: 0.0 [optional]), 'z_max': Parameter(Maximum Redshift, type: <class 'float'>, default: 3.0 [optional]), 'z_min': Parameter(Minimum Redshift, type: <class 'float'>, default: 0.0 [optional]), 'zbin_type': Parameter(Type of redshift binned by, 'spec' or 'phot'. , type: <class 'str'>, default: spec [optional])}
input_type

alias of RailPZPointEstimateDataset

process_data(zphot, specz, low=0.01, high=2.0, nclip=3, nbin=101)[source]
Return type:

dict[str, list[float]]

Parameters:
  • zphot (ndarray)

  • specz (ndarray)

  • low (float)

  • high (float)

  • nclip (int)

  • nbin (int)

class rail.plotting.pz_plotters.PZPlotterPointEstimateVsTrueHist2D(**kwargs)[source]

Bases: RailPlotter

Class to make a 2D histogram of p(z) point estimates versus true redshift

Parameters:

kwargs (Any)

config_options: dict[str, StageParameter] = {'abs_out_thresh': Parameter(Threshold for the absolute outlier rate, type: <class 'float'>, default: 0.2 [optional]), 'n_clip': Parameter(Number of sigma cliping for outliers, type: <class 'int'>, default: 3 [optional]), 'n_zbins': Parameter(Number of z bins, type: <class 'int'>, default: 150 [optional]), 'name': Parameter(Name for the plotter, type: <class 'str'>, default: 0.0 [optional]), 'z_max': Parameter(Maximum Redshift, type: <class 'float'>, default: 3.0 [optional]), 'z_min': Parameter(Minimum Redshift, type: <class 'float'>, default: 0.0 [optional])}
get_biweight_mean_sigma_outlier(subset, nclip=3)[source]
Return type:

tuple[float, float, float, float, float]

Parameters:
  • subset (ndarray)

  • nclip (int)

input_type

alias of RailPZPointEstimateDataset

class rail.plotting.pz_plotters.PZPlotterPointEstimateVsTrueProfile(**kwargs)[source]

Bases: RailPlotter

Class to make a profile plot of p(z) point estimates versus true redshift

Parameters:

kwargs (Any)

config_options: dict[str, StageParameter] = {'n_zbins': Parameter(Number of z bins, type: <class 'int'>, default: 150 [optional]), 'name': Parameter(Name for the plotter, type: <class 'str'>, default: 0.0 [optional]), 'z_max': Parameter(Maximum Redshift, type: <class 'float'>, default: 3.0 [optional]), 'z_min': Parameter(Minimum Redshift, type: <class 'float'>, default: 0.0 [optional])}
input_type

alias of RailPZPointEstimateDataset

class rail.plotting.pz_plotters.RailPZMultiPointEstimateDataset[source]

Bases: RailDataset

Dataet to hold a set of vectors of p(z) point estimates and corresponding true redshifts

data_types: dict[str, type] = {'pointEstimates': dict[str, numpy.ndarray], 'truth': <class 'numpy.ndarray'>}
class rail.plotting.pz_plotters.RailPZPointEstimateDataset[source]

Bases: RailDataset

Dataet to hold a vector p(z) point estimates and corresponding true redshifts

data_types: dict[str, type] = {'magnitude': <class 'numpy.ndarray'>, 'pointEstimate': <class 'numpy.ndarray'>, 'truth': <class 'numpy.ndarray'>}