25 Int_t hbin = histo->FindBin(
p);
28 auto bh = (
TBox *)Canvas2->FindObject(
"TBox");
32 bh->SetFillStyle(3001);
37 bh->SetX1(histo->GetBinLowEdge(hbin));
38 bh->SetY1(histo->GetMinimum());
39 bh->SetX2(histo->GetBinWidth(hbin) + histo->GetBinLowEdge(hbin));
40 bh->SetY2(histo->GetBinContent(hbin));
42 auto th = (
TText *)Canvas2->FindObject(
"TText");
46 th->SetTextColor(bh->GetFillColor());
50 th->SetText(histo->GetXaxis()->GetXmax()*0.75, histo->GetMaximum()*0.5,
71 auto dir =
gROOT->GetTutorialDir();
72 dir.Append(
"/hsimple.C");
73 dir.ReplaceAll(
"/./",
"/");
75 auto file = (
TFile*)
gROOT->ProcessLineFast(
"hsimple(1)");
78 file->GetObject(
"ntuple", ntuple);
81 TCanvas *Canvas1 =
new TCanvas(
"Canvas1",
"Canvas1", 0, 0, 500, 500);
82 Canvas1->
HighlightConnect(
"HighlightBinId(TVirtualPad*,TObject*,Int_t,Int_t)");
84 const char *cut =
"pz > 3.0";
85 ntuple->
Draw(
"px:py", cut);
88 auto info =
new TText(0.0, 4.5,
"please move the mouse over the graph");
89 info->SetTextAlign(22);
90 info->SetTextSize(0.03);
91 info->SetTextColor(
kRed+1);
95 graph->SetHighlight();
97 auto Canvas2 =
new TCanvas(
"Canvas2",
"Canvas2", 505, 0, 600, 400);
98 ntuple->
Draw(
"TMath::Sqrt(px*px + py*py + pz*pz)>>histo(100, 0, 15)", cut);
101 ntuple->
Draw(
"px:py:pz:i", cut,
"goff");
winID h TVirtualViewer3D TVirtualGLPainter p
virtual void HighlightConnect(const char *slot)
This is "simplification" for function TCanvas::Connect with Highlighted signal for specific slot.
A ROOT file is an on-disk file, usually with extension .root, that stores objects in a file-system-li...
A TGraph is an object made of two arrays X and Y with npoints each.
1-D histogram with a float per channel (see TH1 documentation)
A simple TTree restricted to a list of float variables only.
Mother of all ROOT objects.
virtual TObject * FindObject(const char *name) const
Must be redefined in derived classes.
static TString Format(const char *fmt,...)
Static method which formats a string using a printf style format descriptor and return a TString.
Base class for several text objects.
void Draw(Option_t *opt) override
Default Draw method for all objects.
virtual Double_t * GetV3()
virtual Double_t * GetV1()
virtual Double_t * GetV4()
virtual Double_t * GetV2()
TVirtualPad is an abstract base class for the Pad and Canvas classes.
Double_t Sqrt(Double_t x)
Returns the square root of x.