Logo ROOT  
Reference Guide
Loading...
Searching...
No Matches
MCMCIntervalPlot.h
Go to the documentation of this file.
1// @(#)root/roostats:$Id$
2// Authors: Kevin Belasco 17/06/2009
3// Authors: Kyle Cranmer 17/06/2009
4/*************************************************************************
5 * Project: RooStats *
6 * Package: RooFit/RooStats *
7 *************************************************************************
8 * Copyright (C) 1995-2008, Rene Brun and Fons Rademakers. *
9 * All rights reserved. *
10 * *
11 * For the licensing terms see $ROOTSYS/LICENSE. *
12 * For the list of contributors see $ROOTSYS/README/CREDITS. *
13 *************************************************************************/
14
15#ifndef ROOSTATS_MCMCIntervalPlot
16#define ROOSTATS_MCMCIntervalPlot
17
18#include "RooPrintable.h"
19#include "RooArgSet.h"
21#include "RooNDKeysPdf.h"
22#include "RooProduct.h"
23
24#include <TColor.h>
25#include <TH1.h>
26#include <TNamed.h>
27
28namespace RooStats {
29
30 class MCMCIntervalPlot : public TNamed, public RooPrintable {
31
32 public:
35
36 /// Destructor of SamplingDistribution
37 ~MCMCIntervalPlot() override;
38
39 void SetMCMCInterval(MCMCInterval& interval);
40 void SetLineColor(TColorNumber color) {fLineColor = color.number();}
41 void SetLineWidth(Int_t width) {fLineWidth = width;}
42 void SetShadeColor(TColorNumber color) {fShadeColor = color.number();}
43 void SetShowBurnIn(bool showBurnIn) { fShowBurnIn = showBurnIn; }
44
45 void Draw(const Option_t* options = nullptr) override;
46
47 void DrawChainScatter(RooRealVar& xVar, RooRealVar& yVar);
49 void DrawNLLVsTime();
50 void DrawNLLHist(const Option_t* options = nullptr);
51 void DrawWeightHist(const Option_t* options = nullptr);
52
53 private:
56 TH1 *fPosteriorHist = nullptr;
59 TH1 *fNLLHist = nullptr;
60 TH1 *fWeightHist = nullptr;
67 bool fShowBurnIn = true;
68 TGraph *fWalk = nullptr;
69 TGraph *fBurnIn = nullptr;
70 TGraph *fFirst = nullptr;
71 TGraph *fParamGraph = nullptr;
72 TGraph *fNLLGraph = nullptr;
73
74 protected:
75 void DrawPosterior(const Option_t* options = nullptr);
76 void* DrawPosteriorHist(const Option_t* options = nullptr,
77 const char* title = nullptr, bool scale = true);
78 void* DrawPosteriorKeysPdf(const Option_t* options = nullptr);
79 void* DrawPosteriorKeysProduct(const Option_t* options = nullptr);
80
81 void DrawInterval(const Option_t* options = nullptr);
82 void DrawShortestInterval(const Option_t* options = nullptr);
83 void DrawHistInterval(const Option_t* options = nullptr);
84 void DrawKeysPdfInterval(const Option_t* options = nullptr);
85 void DrawTailFractionInterval(const Option_t* options = nullptr);
86
87 ClassDefOverride(MCMCIntervalPlot,1) // Class containing the results of the MCMCCalculator
88 };
89}
90
91#endif
int Int_t
Signed integer 4 bytes (int).
Definition RtypesCore.h:59
short Color_t
Color number (short).
Definition RtypesCore.h:99
const char Option_t
Option string (const char).
Definition RtypesCore.h:80
@ kGray
Definition Rtypes.h:66
@ kBlack
Definition Rtypes.h:66
#define ClassDefOverride(name, id)
Definition Rtypes.h:348
RooArgSet is a container object that can hold multiple RooAbsArg objects.
Definition RooArgSet.h:24
Generic N-dimensional implementation of a kernel estimation p.d.f.
Represents the product of a given set of RooAbsReal objects.
Definition RooProduct.h:29
Variable that can be changed from the outside.
Definition RooRealVar.h:37
void DrawNLLHist(const Option_t *options=nullptr)
void * DrawPosteriorHist(const Option_t *options=nullptr, const char *title=nullptr, bool scale=true)
void DrawChainScatter(RooRealVar &xVar, RooRealVar &yVar)
void DrawTailFractionInterval(const Option_t *options=nullptr)
void SetMCMCInterval(MCMCInterval &interval)
~MCMCIntervalPlot() override
Destructor of SamplingDistribution.
void SetLineColor(TColorNumber color)
void DrawPosterior(const Option_t *options=nullptr)
void DrawHistInterval(const Option_t *options=nullptr)
void SetShadeColor(TColorNumber color)
void * DrawPosteriorKeysProduct(const Option_t *options=nullptr)
void SetLineWidth(Int_t width)
void DrawWeightHist(const Option_t *options=nullptr)
void DrawInterval(const Option_t *options=nullptr)
void DrawParameterVsTime(RooRealVar &param)
void * DrawPosteriorKeysPdf(const Option_t *options=nullptr)
void DrawShortestInterval(const Option_t *options=nullptr)
void DrawKeysPdfInterval(const Option_t *options=nullptr)
void SetShowBurnIn(bool showBurnIn)
MCMCInterval is a concrete implementation of the RooStats::ConfInterval interface.
TH1 is the base class of all histogram classes in ROOT.
Definition TH1.h:109
TNamed()
Definition TNamed.h:38
Namespace for the RooStats classes.
Definition CodegenImpl.h:66
th1 Draw()