388 while ((
g = next())) {
445 auto obj =
lnk->GetObject();
460 opt =
b ?
b->GetDrawOption() :
"alp";
461 opt = (opt ==
"") ?
"alp" : opt.
Data();
485 while ((
g = (
TGraph*) next())) {
486 Int_t dist =
g->DistancetoPrimitive(px,py);
487 if (dist <= 0)
return 0;
514 if (!
gPad->IsEditable())
gROOT->MakeDefCanvas();
534 if (!
f1) {
Printf(
"Unknown function: %s",
fname);
return -1; }
719 gROOT->MakeDefCanvas();
722 Error(
"FitPanel",
"Unable to create a default canvas");
730 Error(
"FitPanel",
"Unable to crate the FitPanel");
733 Error(
"FitPanel",
"Unable to find the FitPanel plug-in");
745 while ((obj = next())) {
768 while ((
g = (
TGraph*) next())) {
772 for (bin=0; bin<
npp; bin++) {
859 while ((
g = (
TGraph*) next())) {
862 for (bin=0; bin<
npp; bin++) {
874 for (
l = 2;
l <=
m; ++
l) {
882 while ((
g = (
TGraph*) next())) {
887 for (k = 0; k <=
npp; ++k) {
894 for (
l = 2;
l <=
m; ++
l) {
899 for (
l = 2;
l <=
m; ++
l) {
906 for (i = 3; i <=
m; ++i) {
907 for (k = i; k <=
m; ++k) {
908 b[k - 1 + (i-1)*20 - 21] =
b[k + (i-2)*20 - 21];
917 for (i=1; i<
m; ++i)
a[i] = 0;
920 for (i=0; i<
m; ++i)
a[i] =
da[i];
952 while ((
g = (
TGraph*) next())) {
956 for (i = 0; i <
npp; ++i) {
962 if (
yk <= 0)
yk = 1
e-9;
995 while ((
g = (
TGraph*) next())) {
996 in =
g->IsInside(
x,
y);
1032 while ((
g = (
TGraph*) next())) {
1033 if (
g->GetN() <= 0)
continue;
1045 if (
g->GetN() >
npt)
npt =
g->GetN();
1110 if (!
h)
return nullptr;
1111 return h->GetXaxis();
1122 if (!
h)
return nullptr;
1123 return h->GetYaxis();
1156 ic =
gPad->NextPaletteColor();
1176 chopt.ReplaceAll(
"PADS",
"");
1237 while (
auto g = (
TGraph*) next()) {
1238 if (
g->GetN() <= 0)
continue;
1250 if (
g->GetN() >
npt)
npt =
g->GetN();
1258 if (
gPad->GetLogy()) {
1329 chopt.ReplaceAll(
"A",
"");
1335 obj =
lnk->GetObject();
1337 gPad->PushSelectableObject(obj);
1339 if (!
gPad->PadInHighlightMode() || (
gPad->PadInHighlightMode() && obj ==
gPad->GetSelected())) {
1345 else obj->
Paint(
"L");
1358 while (
auto f = next()) {
1387 while (
auto obj =
nextPad()) {
1407 g->Draw(
apopt.Append(
"A").Data());
1432 while ((
g = (
TGraph*) next())) {
1439 if (
g->GetN() >
npt)
npt =
g->GetN();
1453 Xaxis->SetNdivisions(-ndiv);
1455 for (i=ndiv; i>=1; i--) {
1457 Xaxis->SetBinLabel(i,
g->GetTitle());
1467 frame->
Paint(
"lego9,fb,bb");
1470 frame->
Paint(
"lego9,fb,a,same");
1482 while ((
g = (
TGraph*) next())) {
1486 gPad->SetLineColor(
g->GetLineColor());
1487 gPad->SetLineWidth(
g->GetLineWidth());
1488 gPad->SetLineStyle(
g->GetLineStyle());
1489 gPad->TAttLine::Modify();
1490 for (i=0; i<
npt-1; i++) {
1509 frame->
Paint(
"lego9,bb,a,same");
1532 while ((
g = (
TGraph *)next())) {
1537 hg =
fg->GetHistogram();
1538 fg->SetHistogram(
h);
1542 g->Paint(
gopt.ReplaceAll(
"a",
"").Data());
1546 fg->SetHistogram(
hg);
1558 while ((
g = (
TGraph*) next())) {
1596 out<<
" "<<std::endl;
1600 out<<
" TMultiGraph *";
1601 out<<
"multigraph = new TMultiGraph();"<<std::endl;
1607 while (
auto g = iter())
1612 out<<
" "<<
l+7<<
"->AddBin(multigraph);"<<std::endl;
1620 out<<
" multigraph->GetXaxis()->SetLimits("<<
xaxis->GetXmin()<<
", "<<
xaxis->GetXmax()<<
");"<<std::endl;
1621 xaxis->SaveAttributes(out,
"multigraph",
"->GetXaxis()");
1623 if (
yaxis)
yaxis->SaveAttributes(out,
"multigraph",
"->GetYaxis()");
1624 if (
fMinimum != -1111) out<<
" multigraph->SetMinimum("<<
fMinimum<<
");"<<std::endl;
1625 if (
fMaximum != -1111) out<<
" multigraph->SetMaximum("<<
fMaximum<<
");"<<std::endl;
ROOT::Detail::TRangeCast< T, true > TRangeDynCast
TRangeDynCast is an adapter class that allows the typed iteration through a TCollection.
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t Float_t Float_t Float_t Int_t Int_t UInt_t UInt_t Rectangle_t Int_t Int_t Window_t TString Int_t GCValues_t GetPrimarySelectionOwner GetDisplay GetScreen GetColormap GetNativeEvent const char const char dpyName wid window const char font_name cursor keysym reg const char only_if_exist regb h Point_t np
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t Float_t r
void H1LeastSquareSeqnd(Int_t n, Double_t *a, Int_t idim, Int_t &ifail, Int_t k, Double_t *b)
Extracted from CERN Program library routine DSEQN.
void H1LeastSquareSeqnd(Int_t n, Double_t *a, Int_t idim, Int_t &ifail, Int_t k, Double_t *b)
Extracted from CERN Program library routine DSEQN.
void Printf(const char *fmt,...)
Formats a string in a circular formatting buffer and prints the string.
class describing the range in the coordinates it supports multiple range in a coordinate.
Class to manage histogram axis.
virtual Bool_t GetTimeDisplay() const
const char * GetTitle() const override
Returns title of object.
virtual Double_t GetBinLowEdge(Int_t bin) const
Return low edge of bin.
virtual void SetTimeDisplay(Int_t value)
Int_t GetLast() const
Return last bin on the axis i.e.
virtual void SetLimits(Double_t xmin, Double_t xmax)
virtual const char * GetTimeFormat() const
virtual void SetTimeFormat(const char *format="")
Change the format used for time plotting.
virtual void SetRange(Int_t first=0, Int_t last=0)
Set the viewing range for the axis using bin numbers.
virtual Double_t GetBinUpEdge(Int_t bin) const
Return up edge of bin.
Int_t GetFirst() const
Return first bin on the axis i.e.
Using a TBrowser one can browse all ROOT objects.
virtual Int_t GetSize() const
Return the capacity of the collection, i.e.
virtual Int_t GetValue(const char *name, Int_t dflt) const
Returns the integer value for a resource.
virtual Int_t GetNpar() const
virtual void SetParLimits(Int_t ipar, Double_t parmin, Double_t parmax)
Set lower and upper limits for parameter ipar.
virtual void SetParameter(Int_t param, Double_t value)
Provides an indirection to the TFitResult class and with a semantics identical to a TFitResult pointe...
A TGraph is an object made of two arrays X and Y with npoints each.
@ kResetHisto
fHistogram must be reset in GetHistogram
virtual void PaintStats(TF1 *fit)
Draw the stats.
1-D histogram with a float per channel (see TH1 documentation)
TH1 is the base class of all histogram classes in ROOT.
virtual void SetDirectory(TDirectory *dir)
By default, when a histogram is created, it is added to the list of histogram objects in the current ...
Int_t DistancetoPrimitive(Int_t px, Int_t py) override
Compute distance from point px,py to a line.
void SetTitle(const char *title) override
Change/set the title.
@ kNoStats
Don't draw stats box.
TObject * FindObject(const char *name) const override
Search object named name in the list of functions.
virtual Double_t GetMaximum(Double_t maxval=FLT_MAX) const
Return maximum value smaller than maxval of bins in the range, unless the value has been overridden b...
virtual void SetMaximum(Double_t maximum=-1111)
virtual void SetMinimum(Double_t minimum=-1111)
void Paint(Option_t *option="") override
Control routine to paint any kind of histograms.
virtual Double_t GetMinimum(Double_t minval=-FLT_MAX) const
Return minimum value larger than minval of bins in the range, unless the value has been overridden by...
virtual void SetStats(Bool_t stats=kTRUE)
Set statistics option on/off.
2-D histogram with a float per channel (see TH1 documentation)
Option_t * GetOption() const
Option_t * GetOption() const override
Returns the object option stored in the list.
TObject * FindObject(const char *name) const override
Find an object in this list using its name.
void Add(TObject *obj) override
TObject * Remove(TObject *obj) override
Remove object from the list.
TObject * First() const override
Return the first object in the list. Returns 0 when list is empty.
virtual TObjLink * FirstLink() const
void Delete(Option_t *option="") override
Remove all objects from the list AND delete all heap based objects.
TObject * At(Int_t idx) const override
Returns the object at position idx. Returns 0 if idx is out of range.
A TMultiGraph is a collection of TGraph (or derived) objects.
Double_t fMinimum
Minimum value for plotting along y.
TH1F * fHistogram
Pointer to histogram used for drawing axis.
TMultiGraph()
TMultiGraph default constructor.
virtual TFitResultPtr Fit(const char *formula, Option_t *option="", Option_t *goption="", Axis_t xmin=0, Axis_t xmax=0)
Fit this graph with function with name fname.
void Paint(Option_t *chopt="") override
Paint all the graphs of this multigraph.
TList * fGraphs
Pointer to list of TGraphs.
virtual void Add(TGraph *graph, Option_t *chopt="")
Add a new graph to the list of graphs.
Double_t fMaximum
Maximum value for plotting along y.
virtual void SetMinimum(Double_t minimum=-1111)
Set multigraph minimum.
Int_t DistancetoPrimitive(Int_t px, Int_t py) override
Compute distance from point px,py to each graph.
void Browse(TBrowser *b) override
Browse multigraph.
TH1F * GetHistogram()
Returns a pointer to the histogram used to draw the axis.
TF1 * GetFunction(const char *name) const
Return pointer to function with name.
virtual void LeastSquareFit(Int_t m, Double_t *a, Double_t xmin, Double_t xmax)
Least squares lpolynomial fitting without weights.
virtual void InitPolynom(Double_t xmin, Double_t xmax)
Compute Initial values of parameters for a polynom.
void PaintPolyLine3D(Option_t *chopt="")
Paint all the graphs of this multigraph as 3D lines.
virtual void InitExpo(Double_t xmin, Double_t xmax)
Compute Initial values of parameters for an exponential.
void Draw(Option_t *chopt="") override
Draw this multigraph with its current attributes.
virtual void FitPanel()
Display a panel with all histogram fit options.
void RecursiveRemove(TObject *obj) override
Recursively remove this object from a list.
void Print(Option_t *chopt="") const override
Print the list of graphs.
TIter begin() const
Get iterator over internal graphs list.
virtual void LeastSquareLinearFit(Int_t ndata, Double_t &a0, Double_t &a1, Int_t &ifail, Double_t xmin, Double_t xmax)
Least square linear fit without weights.
~TMultiGraph() override
TMultiGraph destructor.
void PaintPads(Option_t *chopt="")
Divides the active pad and draws all Graphs in the Multigraph separately.
virtual Option_t * GetGraphDrawOption(const TGraph *gr) const
Return the draw option for the TGraph gr in this TMultiGraph.
TAxis * GetYaxis()
Get y axis of the graph.
virtual void InitGaus(Double_t xmin, Double_t xmax)
Compute Initial values of parameters for a gaussian.
virtual Int_t IsInside(Double_t x, Double_t y) const
Return 1 if the point (x,y) is inside one of the graphs 0 otherwise.
TList * GetListOfFunctions()
Return pointer to list of functions.
virtual void SetMaximum(Double_t maximum=-1111)
Set multigraph maximum.
void PaintReverse(Option_t *chopt="")
Paint all the graphs of this multigraph reverting values along X and/or Y axis.
void SavePrimitive(std::ostream &out, Option_t *option="") override
Save primitive as a C++ statement(s) on output stream out.
TList * fFunctions
Pointer to list of functions (fits and user)
TAxis * GetXaxis()
Get x axis of the graph.
The TNamed class is the base class for all named ROOT classes.
virtual void SetTitle(const char *title="")
Set the title of the TNamed.
const char * GetName() const override
Returns name of object.
const char * GetTitle() const override
Returns title of object.
Mother of all ROOT objects.
virtual void AppendPad(Option_t *option="")
Append graphics object to current pad.
void SetBit(UInt_t f, Bool_t set)
Set or unset the user status bits as specified in f.
virtual void Error(const char *method, const char *msgfmt,...) const
Issue error message.
virtual void Paint(Option_t *option="")
This method must be overridden if a class wants to paint itself.
@ kInvalidObject
if object ctor succeeded but object should not be used
@ kMustCleanup
if object destructor must call RecursiveRemove()
Longptr_t ExecPlugin(int nargs)
Int_t LoadPlugin()
Load the plugin library for this handler.
void ToLower()
Change string to lower-case.
const char * Data() const
TString & ReplaceAll(const TString &s1, const TString &s2)
static TString Format(const char *fmt,...)
Static method which formats a string using a printf style format descriptor and return a TString.
Bool_t IsWhitespace() const
Bool_t Contains(const char *pat, ECaseCompare cmp=kExact) const
Abstract Base Class for Fitting.
static TVirtualFitter * GetFitter()
static: return the current Fitter
TVirtualPad is an abstract base class for the Pad and Canvas classes.
TFitResultPtr FitObject(TH1 *h1, TF1 *f1, Foption_t &option, const ROOT::Math::MinimizerOptions &moption, const char *goption, ROOT::Fit::DataRange &range)
fitting function for a TH1 (called from TH1::Fit)
void FitOptionsMake(EFitObjectType type, const char *option, Foption_t &fitOption)
Decode list of options into fitOption.
Double_t Log(Double_t x)
Returns the natural logarithm of x.
Double_t Sqrt(Double_t x)
Returns the square root of x.
Double_t Log10(Double_t x)
Returns the common (base-10) logarithm of x.
Short_t Abs(Short_t d)
Returns the absolute value of parameter Short_t d.