26 namespace CocoaTutorials {
56 using namespace ROOT::CocoaTutorials;
58 Double_t s1x = 0., s1y = 0., s1z = 0.;
59 Double_t s2x = 0., s2y = 0., s2z = 0.;
60 Double_t s3x = 0., s3y = 0., s3z = 0.;
62 TCanvas *
c1 =
new TCanvas(
"parallel coors",
"parallel coords", 0, 0, 900, 1000);
65 ::Error(
"generate_random",
"This macro works only on OS X with --enable-cocoa");
70 TNtuple *
const nt =
new TNtuple(
"nt",
"Demo ntuple",
"x:y:z:u:v:w:a:b:c");
72 for (
Int_t i = 0; i < 1500; ++i) {
81 nt->Fill(s1x, s1y, s1z, s2x, s2y, s2z,
r7,
r8,
r9);
87 nt->Fill(s2x - 1, s2y - 1, s2z, s1x + .5, s1y + .5, s1z + .5,
r7,
r8,
r9);
93 nt->Fill(s1x + 1, s1y + 1, s1z + 1, s3x - 2, s3y - 2, s3z - 2,
r7,
r8,
r9);
103 nt->Draw(
"x:y:z:u:v:w:a:b:c",
"",
"para");
105 assert(para1 != 0 &&
"parallelcoordtrans, 'ParaCoord' is null");
107 para1->SetLineColor(25);
109 pcv->SetHistogramHeight(0.);
112 pcv->SetHistogramHeight(0.);
115 pcv->SetHistogramHeight(0.);
118 pcv->SetHistogramHeight(0.);
121 pcv->SetHistogramHeight(0.);
124 pcv->SetHistogramHeight(0.);
127 pcv->SetHistogramHeight(0.);
130 pcv->SetHistogramHeight(0.);
133 pcv->SetHistogramHeight(0.);
139 assert(col26 != 0 &&
"parallelcoordtrans, color with index 26 not found");
141 col26->SetAlpha(0.01);
144 nt->Draw(
"x:y:z:u:v:w:a:b:c",
"",
"para");
146 assert(para2 != 0 &&
"parallelcoordtrans, 'ParaCoord' is null");
148 para2->SetLineColor(26);
151 pcv->SetHistogramHeight(0.);
154 pcv->SetHistogramHeight(0.);
157 pcv->SetHistogramHeight(0.);
160 pcv->SetHistogramHeight(0.);
163 pcv->SetHistogramHeight(0.);
166 pcv->SetHistogramHeight(0.);
169 pcv->SetHistogramHeight(0.);
172 pcv->SetHistogramHeight(0.);
175 pcv->SetHistogramHeight(0.);
virtual void Rannor(Float_t &a, Float_t &b)
Return 2 numbers distributed following a gaussian with mean=0 and sigma=1.
virtual Double_t Rndm(Int_t i=0)
Machine independent random number generator.
This is the base class for the ROOT Random number generators.
void parallelcoordtrans()
void generate_random(Int_t i)
The color creation and management class.
virtual void Sphere(Double_t &x, Double_t &y, Double_t &z, Double_t r)
Generates random vectors, uniformly distributed over the surface of a sphere of given radius...
Parallel Coordinates class.
virtual TObject * FindObject(const char *name) const
Must be redefined in derived classes.
void Error(ErrorHandler_t func, int code, const char *va_(fmt),...)
Write error message and call a handler, if required.