Logo ROOT  
Reference Guide
Go to the documentation of this file.
1/// \file
2/// \ingroup tutorial_hist
3/// \notebook
4/// Candle Scaled, illustrates what scaling does on candle and violin charts.
5/// Please try to modify the static functions SetScaledCandle and SetScaledViolin
7/// \macro_image
8/// \macro_code
10/// \author Georg Troska
12void candlescaled()
14 TCanvas *c1 = new TCanvas("c1","TCandle Scaled",800,600);
15 c1->Divide(2,2);
16 TRandom *rng = new TRandom();
17 TH2I *h1 = new TH2I("h1","GausXY",20,-5,5,100,-5,5);
18 TH2I *h3 = new TH2I("h3","GausXY",100,-5,5,20,-5,5);
20 float myRand1;
21 float myRand2;
23 for (int j = 0; j < 100000; j++) {
24 myRand1 = rng->Gaus(0,1);
25 myRand2 = rng->Gaus(0,1);
26 h1->Fill(myRand1, myRand2);
27 h3->Fill(myRand1, myRand2);
28 }
31 c1->cd(1);
33 TCandle::SetScaledCandle(true); /* This is a global option for all existing candles, default is false */
35 h1->SetTitle("CandleX scaled");
36 h1->DrawCopy("candleX2");
37 c1->cd(2);
39 h3->SetTitle("CandleY scaled");
40 h3->DrawCopy("candleY2");
42 TCandle::SetScaledViolin(true); /* This is a global option for all existing violin, default is true */
43 TH2I *h2 = (TH2I*)h1->Clone();
44 h2->SetFillStyle(0);
45 h2->SetFillColor(kGray+2);
47 TH2I *h4 = (TH2I*)h3->Clone();
48 h4->SetFillStyle(0);
49 h4->SetFillColor(kGray+2);
52 c1->cd(3);
53 h2->SetTitle("ViolinX unscaled");
54 h2->DrawCopy("ViolinX");
55 c1->cd(4);
56 h4->SetTitle("ViolinY unscaled");
57 h4->DrawCopy("ViolinY");
@ kGray
Definition: Rtypes.h:65
@ kBlue
Definition: Rtypes.h:66
virtual void SetFillColor(Color_t fcolor)
Set the fill area color.
Definition: TAttFill.h:37
virtual void SetFillStyle(Style_t fstyle)
Set the fill area style.
Definition: TAttFill.h:39
virtual void SetLineColor(Color_t lcolor)
Set the line color.
Definition: TAttLine.h:40
static void SetScaledViolin(const Bool_t vScale=true)
Static function to set scaling between violin-withs.
Definition: TCandle.cxx:237
static void SetScaledCandle(const Bool_t cScale=true)
Static function to set scaling between candles-withs.
Definition: TCandle.cxx:228
The Canvas class.
Definition: TCanvas.h:23
void SetTitle(const char *title) override
See GetStatOverflows for more information.
Definition: TH1.cxx:6708
virtual Int_t Fill(Double_t x)
Increment bin with abscissa X by 1.
Definition: TH1.cxx:3348
virtual TH1 * DrawCopy(Option_t *option="", const char *name_postfix="_copy") const
Copy this histogram and Draw in the current pad.
Definition: TH1.cxx:3117
TObject * Clone(const char *newname="") const override
Make a complete copy of the underlying object.
Definition: TH1.cxx:2737
2-D histogram with an int per channel (see TH1 documentation)}
Definition: TH2.h:216
Int_t Fill(Double_t) override
Invalid Fill method.
Definition: TH2.cxx:358
This is the base class for the ROOT Random number generators.
Definition: TRandom.h:27
virtual Double_t Gaus(Double_t mean=0, Double_t sigma=1)
Samples a random number from the standard Normal (Gaussian) Distribution with the given mean and sigm...
Definition: TRandom.cxx:274
return c1
Definition: legend1.C:41
TH1F * h1
Definition: legend1.C:5