Script illustrating the use of transparency with ||-Coord. 
It displays the same data set twice. The first time without transparency and the second time with transparency. On the second plot, several clusters appear.
 
 
 
void generate_random(
Int_t i) {
 
   r2 = (2*dr*
r->Rndm(i))-dr;
 
   r3 = (2*dr*
r->Rndm(i))-dr;
 
   r5 = (2*dr*
r->Rndm(i))-dr;
 
   r6 = (2*dr*
r->Rndm(i))-dr;
 
   r8 = (2*dr*
r->Rndm(i))-dr;
 
}
 
void parallelcoordtrans() {
 
   auto c1 = 
new TCanvas(
"c1", 
"c1",0,0,900,1000);
 
 
   auto nt = 
new TNtuple(
"nt",
"Demo ntuple",
"x:y:z:u:v:w:a:b:c");
 
 
   for (
Int_t i=0; i<1500; i++) {
 
      r->Sphere(s1x, s1y, s1z, 0.1);
 
      r->Sphere(s2x, s2y, s2z, 0.2);
 
      r->Sphere(s3x, s3y, s3z, 0.05);
 
 
      generate_random(i);
      nt->Fill(r1, r2, r3, r4, r5, r6, r7, r8, r9);
 
      generate_random(i);
      nt->Fill(s1x, s1y, s1z, s2x, s2y, s2z, r7, r8, r9);
 
      generate_random(i);
      nt->Fill(r1, r2, r3, r4, r5, r6, r7, s3y, r9);
 
      generate_random(i);
      nt->Fill(s2x-1, s2y-1, s2z, s1x+.5, s1y+.5, s1z+.5, r7, r8, r9);
 
      generate_random(i);
      nt->Fill(r1, r2, r3, r4, r5, r6, r7, r8, r9);
 
      generate_random(i);
      nt->Fill(s1x+1, s1y+1, s1z+1, s3x-2, s3y-2, s3z-2, r7, r8, r9);
 
      generate_random(i);
      nt->Fill(r1, r2, r3, r4, r5, r6, s3x, r8, s3z );
   }
 
 
 
   
   nt->
Draw(
"x:y:z:u:v:w:a:b:c",
"",
"para");
 
 
 
   
   nt->Draw("x:y:z:u:v:w:a:b:c","","para");
 
   
   c1->Print(
"parallelcoordtrans.pdf");
 
   c1->Print(
"parallelcoordtrans.svg");
 
 
   
   c1->Print(
"parallelcoordtrans.jpg");
 
   c1->Print(
"parallelcoordtrans.png");
 
}
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t Float_t r
 
The color creation and management class.
 
static Int_t GetColor(const char *hexcolor)
Static method returning color number for color specified by hex color string of form: "#rrggbb",...
 
virtual void SetAlpha(Float_t a)
 
TObject * FindObject(const char *name) const override
Find an object in this list using its name.
 
A simple TTree restricted to a list of float variables only.
 
virtual TObject * FindObject(const char *name) const
Must be redefined in derived classes.
 
void SetHistogramHeight(Double_t h=0)
Set the height of the bar histogram.
 
virtual void Draw(Option_t *option="")
Draw the axis.
 
Parallel Coordinates class.
 
void SetLineColor(Color_t col)
 
This is the base class for the ROOT Random number generators.