Logo ROOT  
Reference Guide
legendautoplaced.C File Reference

Detailed Description

View in nbviewer Open in SWAN The legend can be placed automatically in the current pad in an empty space found at painting time.

The following example illustrate this facility. Only the width and height of the legend is specified in percentage of the pad size.

void legendautoplaced()
{
auto c4 = new TCanvas("c", "c", 600,500);
auto hpx = new TH1D("hpx","This is the hpx distribution",100,-4.,4.);
hpx->FillRandom("gaus", 50000);
hpx->Draw("E");
hpx->GetYaxis()->SetTitle("Y Axis title");
hpx->GetYaxis()->SetTitleOffset(1.3); hpx->GetYaxis()->CenterTitle(true);
hpx->GetXaxis()->SetTitle("X Axis title");
hpx->GetXaxis()->CenterTitle(true);
auto h1 = new TH1D("h1","A green histogram",100,-2.,2.);
h1->FillRandom("gaus", 10000);
h1->Draw("same");
auto g = new TGraph();
g->SetPoint(0, -3.5, 100 );
g->SetPoint(1, -3.0, 300 );
g->SetPoint(2, -2.0, 1000 );
g->SetPoint(3, 1.0, 800 );
g->SetPoint(4, 0.0, 200 );
g->SetPoint(5, 3.0, 200 );
g->SetPoint(6, 3.0, 700 );
g->Draw("L");
g->SetTitle("This is a TGraph");
g->SetLineColor(kRed);
g->SetFillColor(0);
// TPad::BuildLegend() default placement values are such that they trigger
// the automatic placement.
c4->BuildLegend();
}
#define g(i)
Definition: RSha256.hxx:105
@ kRed
Definition: Rtypes.h:64
@ kGreen
Definition: Rtypes.h:64
virtual void SetLineColor(Color_t lcolor)
Set the line color.
Definition: TAttLine.h:40
The Canvas class.
Definition: TCanvas.h:31
A Graph is a graphics object made of two arrays X and Y with npoints each.
Definition: TGraph.h:41
1-D histogram with a double per channel (see TH1 documentation)}
Definition: TH1.h:614
virtual void FillRandom(const char *fname, Int_t ntimes=5000)
Fill histogram following distribution in function fname.
Definition: TH1.cxx:3445
virtual void Draw(Option_t *option="")
Draw this histogram with options.
Definition: TH1.cxx:2998
TH1F * h1
Definition: legend1.C:5
Author
Olivier Couet

Definition in file legendautoplaced.C.