10 class TGraphAsymmErrors;
42 const IPrediction* mc,
47 const SystShifts&
shift,
48 std::string hist_name,
54 std::string hist_name,
63 std::string hist_name,
65 bool force1D =
false);
69 const SystShifts&
shift,
70 std::string hist_name,
78 std::string hist_base_name,
80 bool force1D =
false);
84 double miny = 0,
double maxy = 3);
88 const IPrediction* mc,
90 double miny = 0,
double maxy = 3);
93 void DataMCRatio(
const Spectrum& data,
const Spectrum& mc,
94 double miny = 0,
double maxy = 3);
98 const IPrediction* mc,
100 double miny = 0,
double maxy = 3);
104 const Spectrum& expected,
106 double miny = 0,
double maxy = 1.2);
120 const std::vector<const ISyst*>& systs,
123 int col = -1,
int errCol = -1,
124 float headroom = 1.3,
125 bool newaxis =
true);
139 const std::vector<Spectrum>& upShifts,
140 const std::vector<Spectrum>& downShifts,
142 int col = -1,
int errCol = -1,
143 float headroom = 1.3,
bool newaxis=
true);
165 TGraphAsymmErrors*
GraphWithPoissonErrors(
const TH1*
h,
bool noErrorsXaxis =
false,
bool drawEmptyBins =
true);
172 TGraphAsymmErrors *
ProfileQuantile(
const TH2 * hist,
const std::string & axis_name,
const std::string & graph_name=
"",
const std::pair<double, double> & quantile_divisions={0.159, 0.841});
THStack * ToTHStack(const std::vector< std::pair< Spectrum, Color_t >> &s, double pot)
Can call like ToTHStack({{h1, kRed}, {h2, kBlue}}, pot)
void DataMCRatio(const Spectrum &data, const IPrediction *mc, osc::IOscCalc *calc, double miny, double maxy)
Plot data/MC ratio for the given spectrum. Normalize MC to Data by POT.
TH1 * DataMCComparison(const Spectrum &data, const Spectrum &mc)
void PlotWithSystErrorBand(IPrediction *pred, const std::vector< const ISyst * > &systs, osc::IOscCalc *calc, double pot, int col, int errCol, float headroom, bool newaxis)
Plot prediction with +/-1sigma error band.
TGraphAsymmErrors * GraphWithPoissonErrors(const TH1 *h, bool noErrorsXaxis, bool drawEmptyBins)
Calculate statistical errors appropriate for small Poisson numbers.
process_name opflashCryoW ana
_IOscCalc< double > IOscCalc
TGraphAsymmErrors * ProfileQuantile(const TH2 *hist, const std::string &axisName, const std::string &graphName, const std::pair< double, double > &quantileDivisions)
Calculate profile with error bars corresponding to specified quantiles of a 2D distribution (by defau...
std::vector< TH1 * > GetMCTotalForSystShifts(const IPrediction *mc, osc::IOscCalc *calc, const ISyst *syst, std::string hist_base_name, double pot, bool force1D)
auto vector(Vector const &v)
Returns a manipulator which will print the specified array.
void RatioPlot(const Spectrum &data, const Spectrum &expected, const Spectrum &fit, double miny, double maxy)
Plot data/expected, compared with fit/expected.
TH1 * DataMCComparisonAreaNormalized(const Spectrum &data, const Spectrum &mc)
TGraph * ShadeBetweenHistograms(TH1 *hmin, TH1 *hmax)
TH1 * GetMCTotal(const IPrediction *mc, osc::IOscCalc *calc, std::string hist_name, double pot, bool force1D)
std::vector< TH1 * > GetMCSystComponents(const IPrediction *mc, osc::IOscCalc *calc, const SystShifts &shift, std::string hist_name, double pot, bool force1D)
void CountingExperimentErrorBarChart(const std::map< std::string, double > &systs, double statErr=0, bool bkgdOrSig=false, bool shortchart=false)
Make a simple plot of relative size of different errors.
void DataMCAreaNormalizedRatio(const Spectrum &data, const IPrediction *mc, osc::IOscCalc *calc, double miny, double maxy)
Plot data/MC ratio for the given spectrum. Normalize MC to Data by area.
TH1 * DataMCComparisonComponents(const Spectrum &data, const IPrediction *mc, osc::IOscCalc *calc)
Plot MC broken down into flavour components, overlayed with data.
then echo File list $list not found else cat $list while read file do echo $file sed s
std::vector< TH1 * > GetMCComponents(const IPrediction *mc, osc::IOscCalc *calc, std::string hist_name, double pot, bool force1D)
TH1 * GetMCSystTotal(const IPrediction *mc, osc::IOscCalc *calc, const SystShifts &shift, std::string hist_name, double pot, bool force1D)
TLegend * AutoPlaceLegend(double dx, double dy, double yPin)
Create a legend, maximizing distance from all histograms.