principal.C: Principal Components Analysis (PCA) example | Math tutorials | tStudent.C: Example macro describing the student t distribution |
void quantiles() { // demo for quantiles // Authors: Rene Brun, Eddy Offermann const Int_t nq = 100; const Int_t nshots = 10; Double_t xq[nq]; // position where to compute the quantiles in [0,1] Double_t yq[nq]; // array to contain the quantiles for (Int_t i=0;i<nq;i++) xq[i] = Float_t(i+1)/nq; TGraph *gr70 = new TGraph(nshots); TGraph *gr90 = new TGraph(nshots); TGraph *gr98 = new TGraph(nshots); TH1F *h = new TH1F("h","demo quantiles",50,-3,3); for (Int_t shot=0;shot<nshots;shot++) { h->FillRandom("gaus",50); h->GetQuantiles(nq,yq,xq); gr70->SetPoint(shot,shot+1,yq[70]); gr90->SetPoint(shot,shot+1,yq[90]); gr98->SetPoint(shot,shot+1,yq[98]); } //show the original histogram in the top pad TCanvas *c1 = new TCanvas("c1","demo quantiles",10,10,600,900); c1->SetFillColor(41); c1->Divide(1,3); c1->cd(1); h->SetFillColor(38); h->Draw(); // show the final quantiles in the middle pad c1->cd(2); gPad->SetFrameFillColor(33); gPad->SetGrid(); TGraph *gr = new TGraph(nq,xq,yq); gr->SetTitle("final quantiles"); gr->SetMarkerStyle(21); gr->SetMarkerColor(kRed); gr->SetMarkerSize(0.3); gr->Draw("ap"); // show the evolution of some quantiles in the bottom pad c1->cd(3); gPad->SetFrameFillColor(17); gPad->DrawFrame(0,0,nshots+1,3.2); gPad->SetGrid(); gr98->SetMarkerStyle(22); gr98->SetMarkerColor(kRed); gr98->Draw("lp"); gr90->SetMarkerStyle(21); gr90->SetMarkerColor(kBlue); gr90->Draw("lp"); gr70->SetMarkerStyle(20); gr70->SetMarkerColor(kMagenta); gr70->Draw("lp"); // add a legend TLegend *legend = new TLegend(0.85,0.74,0.95,0.95); legend->SetTextFont(72); legend->SetTextSize(0.05); legend->AddEntry(gr98," q98","lp"); legend->AddEntry(gr90," q90","lp"); legend->AddEntry(gr70," q70","lp"); legend->Draw(); } quantiles.C:1 quantiles.C:2 quantiles.C:3 quantiles.C:4 quantiles.C:5 quantiles.C:6 quantiles.C:7 quantiles.C:8 quantiles.C:9 quantiles.C:10 quantiles.C:11 quantiles.C:12 quantiles.C:13 quantiles.C:14 quantiles.C:15 quantiles.C:16 quantiles.C:17 quantiles.C:18 quantiles.C:19 quantiles.C:20 quantiles.C:21 quantiles.C:22 quantiles.C:23 quantiles.C:24 quantiles.C:25 quantiles.C:26 quantiles.C:27 quantiles.C:28 quantiles.C:29 quantiles.C:30 quantiles.C:31 quantiles.C:32 quantiles.C:33 quantiles.C:34 quantiles.C:35 quantiles.C:36 quantiles.C:37 quantiles.C:38 quantiles.C:39 quantiles.C:40 quantiles.C:41 quantiles.C:42 quantiles.C:43 quantiles.C:44 quantiles.C:45 quantiles.C:46 quantiles.C:47 quantiles.C:48 quantiles.C:49 quantiles.C:50 quantiles.C:51 quantiles.C:52 quantiles.C:53 quantiles.C:54 quantiles.C:55 quantiles.C:56 quantiles.C:57 quantiles.C:58 quantiles.C:59 quantiles.C:60 quantiles.C:61 quantiles.C:62 quantiles.C:63 quantiles.C:64 quantiles.C:65 quantiles.C:66 quantiles.C:67 |
|