12 #ifndef ROOT_TParallelCoordVar
13 #define ROOT_TParallelCoordVar
20 class TParallelCoordSelect;
21 class TParallelCoordRange;
24 class TParallelCoordVar :
public TNamed,
public TAttLine,
public TAttFill {
29 kShowBarHisto = BIT(16)
48 Double_t fHistoHeight;
51 TParallelCoord *fParallel;
56 TParallelCoordVar(Double_t *val,
const char* title,Int_t
id, TParallelCoord* gram);
57 virtual ~TParallelCoordVar();
59 void AddRange(TParallelCoordRange* range);
60 void AddRange() {AddRange(NULL);}
61 void DeleteVariable();
62 virtual Int_t DistancetoPrimitive(Int_t px, Int_t py);
63 virtual void Draw(Option_t *option=
"");
64 Bool_t Eval(Long64_t evtidx, TParallelCoordSelect *select);
65 virtual void ExecuteEvent(Int_t entry, Int_t px, Int_t py);
66 Bool_t GetBarHisto() {
return TestBit(kShowBarHisto);}
67 Bool_t GetBoxPlot() {
return TestBit(kShowBox);}
69 Int_t GetId() {
return fId;}
70 Bool_t GetLogScale()
const {
return TestBit (kLogScale);}
71 Int_t GetHistBinning()
const {
return fNbins;}
72 Double_t GetCurrentMin()
const {
return fMinCurrent;}
73 Double_t GetCurrentMax()
const {
return fMaxCurrent;}
74 Double_t GetCurrentAverage()
const {
return fMean;}
75 void GetEntryXY(Long64_t n, Double_t & x, Double_t & y);
76 Int_t GetEntryWeight(Long64_t evtidx);
77 Double_t GetHistHeight() {
return fHistoHeight;}
78 Int_t GetHistLineWidth() {
return fHistoLW;}
81 Double_t GetX() {
return fX1;}
82 Double_t GetY() {
return fY1;}
83 Int_t GetNbins() {
return fNbins;}
84 Long64_t GetNentries()
const {
return fNentries;}
85 virtual char *GetObjectInfo(Int_t px, Int_t py)
const;
86 TParallelCoord* GetParallel() {
return fParallel;}
87 TList *GetRanges() {
return fRanges;}
88 Double_t *GetValues() {
return fVal;}
89 Double_t GetValuefromXY(Double_t x,Double_t y);
90 Bool_t GetVert() {
return fX1 == fX2;}
91 void GetXYfromValue(Double_t value, Double_t & x, Double_t & y);
93 virtual void Paint(Option_t* option=
"");
95 void PaintHistogram();
97 virtual void Print(Option_t* option=
"")
const;
98 void SavePrimitive(std::ostream & out, Option_t *options);
99 void SetBoxPlot(Bool_t box);
100 void SetBarHisto(Bool_t h) {SetBit(kShowBarHisto,h);}
101 void SetHistogramLineWidth(Int_t lw=2) {fHistoLW = lw;}
102 void SetHistogramHeight(Double_t h=0);
103 void SetHistogramBinning(Int_t n=100);
104 void SetCurrentLimits(Double_t min, Double_t max);
105 void SetCurrentMin(Double_t min);
106 void SetCurrentMax(Double_t max);
107 void SetInitMin(Double_t min) {fMinInit = min;}
108 void SetInitMax(Double_t max) {fMaxInit = max;}
109 void SetLiveRangesUpdate(Bool_t on);
110 void SetLogScale(Bool_t log);
111 void SetTitle(
const char* ) {}
112 void SetValues(Long64_t length, Double_t* val);
113 void SetX(Double_t x, Bool_t gl);
114 void SetY(Double_t y, Bool_t gl);
115 void Unzoom() {SetCurrentLimits(fMinInit,fMaxInit);}
117 ClassDef(TParallelCoordVar,1);