ROOT  6.07/01
Reference Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
palettes.C
Go to the documentation of this file.
1 /// \file
2 /// \ingroup tutorial_graphics
3 /// This macro draws all the high definition palettes available in ROOT.
4 /// It generates a png file for each palette and one pdf file, with a table of
5 /// content, containing all the palettes
6 ///
7 /// \macro_image
8 /// \macro_code
9 ///
10 /// \author Olivier Couet
11 
12 TCanvas *c;
13 
14 void draw_palette(int p, TString n){
15  delete c;
16  c = new TCanvas("c","Contours",0,0,500,500);
17  TF2 *f2 = new TF2("f2","0.1+(1-(x-2)*(x-2))*(1-(y-2)*(y-2))",0.999,3.002,0.999,3.002);
18  f2->SetContour(99);
19  gStyle->SetPalette(p);
20  f2->SetLineWidth(1);
21  f2->SetLineColor(kBlack);
22  f2->Draw("surf1z");
23 
24  // Title
25  TPaveText *pt = new TPaveText(10,11,10,11,"blNDC");
26  pt->SetName("title");
27  pt->Draw();
28  TString num = n;
29  num.ReplaceAll(" ","");
30  TLatex *l = new TLatex(-0.8704441,0.9779387,Form("Palette #%d: %s #scale[0.7]{(#font[82]{k%s})}",p,n.Data(),num.Data()));
31  l->SetTextFont(42);
32  l->SetTextSize(0.035);
33  l->Draw();
34  c->Update();
35  c->Print(Form("palette_%d.png",p));
36  if (p==51) {c->Print("palettes.pdf(", Form("Title:%s",n.Data())); return;}
37  if (p==111) {c->Print("palettes.pdf)", Form("Title:%s",n.Data())); return;}
38  c->Print("palettes.pdf", Form("Title:%s",n.Data()));
39 }
40 
41 void palettes() {
42  gROOT->SetBatch(1);
43  c = new TCanvas("c","Contours",0,0,500,500);
44  draw_palette(kDeepSea, "Deap Sea");
45  draw_palette(kGreyScale, "Grey Scale");
46  draw_palette(kDarkBodyRadiator, "Dark Body Radiator");
47  draw_palette(kBlueYellow, "Blue Yellow");
48  draw_palette(kRainBow, "Rain Bow");
49  draw_palette(kInvertedDarkBodyRadiator, "Inverted Dark Body Radiator");
50  draw_palette(kBird, "Bird");
51  draw_palette(kCubehelix, "Cube helix");
52  draw_palette(kGreenRedViolet, "Green Red Violet");
53  draw_palette(kBlueRedYellow, "Blue Red Yellow");
54  draw_palette(kOcean, "Ocean");
55  draw_palette(kColorPrintableOnGrey, "Color Printable On Grey");
56  draw_palette(kAlpine, "Alpine");
57  draw_palette(kAquamarine, "Aquamarine");
58  draw_palette(kArmy, "Army");
59  draw_palette(kAtlantic, "Atlantic");
60  draw_palette(kAurora, "Aurora");
61  draw_palette(kAvocado, "Avocado");
62  draw_palette(kBeach, "Beach");
63  draw_palette(kBlackBody, "Black Body");
64  draw_palette(kBlueGreenYellow, "Blue Green Yellow");
65  draw_palette(kBrownCyan, "Brown Cyan");
66  draw_palette(kCMYK, "CMYK");
67  draw_palette(kCandy, "Candy");
68  draw_palette(kCherry, "Cherry");
69  draw_palette(kCoffee, "Coffee");
70  draw_palette(kDarkRainBow, "Dark Rain Bow");
71  draw_palette(kDarkTerrain, "Dark Terrain");
72  draw_palette(kFall, "Fall");
73  draw_palette(kFruitPunch, "Fruit Punch");
74  draw_palette(kFuchsia, "Fuchsia");
75  draw_palette(kGreyYellow, "Grey Yellow");
76  draw_palette(kGreenBrownTerrain, "Green Brown Terrain");
77  draw_palette(kGreenPink, "Green Pink");
78  draw_palette(kIsland, "Island");
79  draw_palette(kLake, "Lake");
80  draw_palette(kLightTemperature, "Light Temperature");
81  draw_palette(kLightTerrain, "Light Terrain");
82  draw_palette(kMint, "Mint");
83  draw_palette(kNeon, "Neon");
84  draw_palette(kPastel, "Pastel");
85  draw_palette(kPearl, "Pearl");
86  draw_palette(kPigeon, "Pigeon");
87  draw_palette(kPlum, "Plum");
88  draw_palette(kRedBlue, "Red Blue");
89  draw_palette(kRose, "Rose");
90  draw_palette(kRust, "Rust");
91  draw_palette(kSandyTerrain, "Sandy Terrain");
92  draw_palette(kSienna, "Sienna");
93  draw_palette(kSolar, "Solar");
94  draw_palette(kSouthWest, "South West");
95  draw_palette(kStarryNight, "Starry Night");
96  draw_palette(kSunset, "Sunset");
97  draw_palette(kTemperatureMap, "Temperature Map");
98  draw_palette(kThermometer, "Thermometer");
99  draw_palette(kValentine, "Valentine");
100  draw_palette(kVisibleSpectrum, "Visible Spectrum");
101  draw_palette(kWaterMelon, "Water Melon");
102  draw_palette(kCool, "Cool");
103  draw_palette(kCopper, "Copper");
104  draw_palette(kGistEarth, "Gist Earth");
105  draw_palette(kViridis, "Viridis");
106 }
107 
virtual void SetLineWidth(Width_t lwidth)
Definition: TAttLine.h:57
virtual void SetName(const char *name="")
Definition: TPave.h:84
virtual void Draw(Option_t *option="")
Draw this function with its current attributes.
Definition: TF2.cxx:216
virtual void Draw(Option_t *option="")
Draw this pavetext with its current attributes.
Definition: TPaveText.cxx:211
Definition: TColor.h:145
return c
TString & ReplaceAll(const TString &s1, const TString &s2)
Definition: TString.h:635
R__EXTERN TStyle * gStyle
Definition: TStyle.h:423
Definition: Rtypes.h:60
Definition: TColor.h:143
#define gROOT
Definition: TROOT.h:344
Definition: TColor.h:141
Basic string class.
Definition: TString.h:137
virtual void Draw(Option_t *option="")
Default Draw method for all objects.
Definition: TObject.cxx:254
virtual void Print(const char *filename="") const
Save Pad contents in a file in one of various formats.
Definition: TPad.cxx:4134
const char * Data() const
Definition: TString.h:349
virtual void SetTextFont(Font_t tfont=62)
Definition: TAttText.h:59
Definition: TColor.h:139
Definition: TColor.h:145
To draw Mathematical Formula.
Definition: TLatex.h:33
Definition: TColor.h:144
virtual void SetLineColor(Color_t lcolor)
Definition: TAttLine.h:54
char * Form(const char *fmt,...)
Definition: TColor.h:142
Definition: TColor.h:149
Definition: TColor.h:133
A 2-Dim function with parameters.
Definition: TF2.h:33
Definition: TColor.h:137
The Canvas class.
Definition: TCanvas.h:48
A Pave (see TPave) with text, lines or/and boxes inside.
Definition: TPaveText.h:35
Definition: TColor.h:137
virtual void SetContour(Int_t nlevels=20, const Double_t *levels=0)
Set the number and values of contour levels.
Definition: TF2.cxx:872
Definition: TColor.h:143
Definition: TColor.h:136
Definition: TColor.h:146
Definition: TColor.h:134
Definition: TColor.h:132
virtual void SetTextSize(Float_t tsize=1)
Definition: TAttText.h:60
virtual void Update()
Update canvas pad buffers.
Definition: TCanvas.cxx:2179
const Int_t n
Definition: legend1.C:16
void SetPalette(Int_t ncolors=kBird, Int_t *colors=0, Float_t alpha=1.)
See TColor::SetPalette.
Definition: TStyle.cxx:1445