Graphics object made of three arrays X, Y and Z with the same number of points each.
This class has different constructors:
SetPoint()
. The following line fills the internal arrays at the position i
with the values x
, y
, z
. SetPoint()
must be used to fill the internal arrays.%lg %lg %lg
Note that in any of these three cases, SetPoint()
can be used to change a data point or add a new one. If the data point index (i
) is greater than the current size of the internal arrays, they are automatically extended.
Like TGraph some TGraph2D constructors do not have the TGraph2D title and name as parameters. For these constructors TGraph2D has the default title and name "Graph2D". To change the default title and name SetTitle
and SetName
should be called on the TGraph2D after its creation.
Specific drawing options can be used to paint a TGraph2D:
Option | Description |
---|---|
"TRI" | The Delaunay triangles are drawn using filled area. An hidden surface drawing technique is used. The surface is painted with the current fill area color. The edges of each triangles are painted with the current line color. |
"TRIW" | The Delaunay triangles are drawn as wire frame. |
"TRI1" | The Delaunay triangles are painted with color levels. The edges of each triangles are painted with the current line color. |
"TRI2" | The Delaunay triangles are painted with color levels. |
"P" | Draw a marker at each vertex. |
"P0" | Draw a circle at each vertex. Each circle background is white. |
"PCOL" | Draw a marker at each vertex. The color of each marker is defined according to its Z position. |
"LINE" | Draw a 3D polyline. |
"CONT5" | Draw a contour plot using Delaunay triangles. |
A TGraph2D can be also drawn with any options valid to draw a 2D histogram (like COL
, SURF
, LEGO
, CONT
etc..).
When a TGraph2D is drawn with one of the 2D histogram drawing option, an intermediate 2D histogram is filled using the Delaunay triangles to interpolate the data set. The 2D histogram has equidistant bins along the X and Y directions. The number of bins along each direction can be change using SetNpx()
and SetNpy()
. Each bin is filled with the Z value found via a linear interpolation on the plane defined by the triangle above the (X,Y) coordinates of the bin center.
The existing (X,Y,Z) points can be randomly scattered. The Delaunay triangles are build in the (X,Y) plane. These 2D triangles are then used to define flat planes in (X,Y,Z) over which the interpolation is done to fill the 2D histogram. The 3D triangles int takes build a 3D surface in the form of tessellating triangles at various angles. The triangles found can be drawn in 3D with one of the TGraph2D specific drawing options.
The histogram generated by the Delaunay interpolation can be accessed using the GetHistogram()
method.
The axis settings (title, ranges etc ...) can be changed accessing the axis via the GetXaxis GetYaxis and GetZaxis methods. They access the histogram axis created at drawing time only. Therefore they should called after the TGraph2D is drawn:
2D graphs can be fitted as shown by the following example:
Example showing the PCOL option.
For a set S of points in the Euclidean plane, the unique triangulation DT(S) of S such that no point in S is inside the circumcircle of any triangle in DT(S). DT(S) is the dual of the Voronoi diagram of S. If n is the number of points in S, the Voronoi diagram of S is the partitioning of the plane containing S points into n convex polygons such that each polygon contains exactly one point and every point in a given polygon is closer to its central point than to any other. A Voronoi diagram is sometimes also known as a Dirichlet tessellation.
This applet gives a nice practical view of Delaunay triangulation and Voronoi diagram.
Definition at line 41 of file TGraph2D.h.
Public Member Functions | |
TGraph2D () | |
Graph2D default constructor. | |
TGraph2D (const char *filename, const char *format="%lg %lg %lg", Option_t *option="") | |
Graph2D constructor reading input from filename filename is assumed to contain at least three columns of numbers. | |
TGraph2D (const char *name, const char *title, Int_t n, Double_t *x, Double_t *y, Double_t *z) | |
Graph2D constructor with name, title and three vectors of doubles as input. | |
TGraph2D (const TGraph2D &) | |
Graph2D copy constructor. | |
TGraph2D (Int_t n) | |
Graph2D constructor. | |
TGraph2D (Int_t n, Double_t *x, Double_t *y, Double_t *z) | |
Graph2D constructor with three vectors of doubles as input. | |
TGraph2D (Int_t n, Float_t *x, Float_t *y, Float_t *z) | |
Graph2D constructor with three vectors of floats as input. | |
TGraph2D (Int_t n, Int_t *x, Int_t *y, Int_t *z) | |
Graph2D constructor with three vectors of ints as input. | |
TGraph2D (TH2 *h2) | |
Graph2D constructor with a TH2 (h2) as input. | |
~TGraph2D () override | |
TGraph2D destructor. | |
virtual void | AddPoint (Double_t x, Double_t y, Double_t z) |
Append a new point to the graph. | |
void | Browse (TBrowser *) override |
Browse. | |
void | Clear (Option_t *option="") override |
Free all memory allocated by this object. | |
virtual void | DirectoryAutoAdd (TDirectory *) |
Perform the automatic addition of the graph to the given directory. | |
Int_t | DistancetoPrimitive (Int_t px, Int_t py) override |
Computes distance from point px,py to a graph. | |
void | Draw (Option_t *option="P0") override |
Specific drawing options can be used to paint a TGraph2D: | |
void | ExecuteEvent (Int_t event, Int_t px, Int_t py) override |
Executes action corresponding to one event. | |
TObject * | FindObject (const char *name) const override |
search object named name in the list of functions | |
TObject * | FindObject (const TObject *obj) const override |
search object obj in the list of functions | |
virtual TFitResultPtr | Fit (const char *formula, Option_t *option="", Option_t *goption="") |
Fits this graph with function with name fname Predefined functions such as gaus, expo and poln are automatically created by ROOT. | |
virtual TFitResultPtr | Fit (TF2 *f2, Option_t *option="", Option_t *goption="") |
Fits this 2D graph with function f2. | |
virtual void | FitPanel () |
Display a GUI panel with all graph fit options. | |
TList * | GetContourList (Double_t contour) |
Returns the X and Y graphs building a contour. | |
TDirectory * | GetDirectory () const |
virtual Double_t | GetErrorX (Int_t bin) const |
This function is called by Graph2DFitChisquare. | |
virtual Double_t | GetErrorY (Int_t bin) const |
This function is called by Graph2DFitChisquare. | |
virtual Double_t | GetErrorZ (Int_t bin) const |
This function is called by Graph2DFitChisquare. | |
virtual Double_t * | GetEX () const |
virtual Double_t * | GetEXhigh () const |
virtual Double_t * | GetEXlow () const |
virtual Double_t * | GetEY () const |
virtual Double_t * | GetEYhigh () const |
virtual Double_t * | GetEYlow () const |
virtual Double_t * | GetEZ () const |
virtual Double_t * | GetEZhigh () const |
virtual Double_t * | GetEZlow () const |
TH2D * | GetHistogram (Option_t *option="") |
By default returns a pointer to the Delaunay histogram. | |
TList * | GetListOfFunctions () const |
Double_t | GetMargin () const |
Double_t | GetMaximum () const |
Double_t | GetMinimum () const |
Int_t | GetN () const |
Int_t | GetNpx () const |
Int_t | GetNpy () const |
virtual Int_t | GetPoint (Int_t i, Double_t &x, Double_t &y, Double_t &z) const |
Get x, y and z values for point number i. | |
Double_t * | GetX () const |
TAxis * | GetXaxis () const |
Get x axis of the graph. | |
Double_t | GetXmax () const |
Returns the X maximum. | |
virtual Double_t | GetXmaxE () const |
Double_t | GetXmin () const |
Returns the X minimum. | |
virtual Double_t | GetXminE () const |
Double_t * | GetY () const |
TAxis * | GetYaxis () const |
Get y axis of the graph. | |
Double_t | GetYmax () const |
Returns the Y maximum. | |
virtual Double_t | GetYmaxE () const |
Double_t | GetYmin () const |
Returns the Y minimum. | |
virtual Double_t | GetYminE () const |
Double_t * | GetZ () const |
TAxis * | GetZaxis () const |
Get z axis of the graph. | |
Double_t | GetZmax () const |
Returns the Z maximum. | |
virtual Double_t | GetZmaxE () const |
Double_t | GetZmin () const |
Returns the Z minimum. | |
virtual Double_t | GetZminE () const |
Double_t | Interpolate (Double_t x, Double_t y) |
Finds the z value at the position (x,y) thanks to the Delaunay interpolation. | |
TClass * | IsA () const override |
TGraph2D & | operator= (const TGraph2D &) |
Graph2D operator "=". | |
void | Paint (Option_t *option="") override |
Paints this 2D graph with its current attributes. | |
void | Print (Option_t *chopt="") const override |
Print 2D graph values. | |
TH1 * | Project (Option_t *option="x") const |
Projects a 2-d graph into 1 or 2-d histograms depending on the option parameter. | |
Int_t | RemovePoint (Int_t ipoint) |
Deletes point number ipoint. | |
void | SavePrimitive (std::ostream &out, Option_t *option="") override |
Saves primitive as a C++ statement(s) on output stream out. | |
virtual void | Scale (Double_t c1=1., Option_t *option="z") |
Multiply the values of a TGraph2D by a constant c1. | |
virtual void | Set (Int_t n) |
Set number of points in the 2D graph. | |
virtual void | SetDirectory (TDirectory *dir) |
By default when an 2D graph is created, it is added to the list of 2D graph objects in the current directory in memory. | |
virtual void | SetHistogram (TH2 *h, Option_t *option="") |
Sets the histogram to be filled. | |
void | SetMargin (Double_t m=0.1) |
Sets the extra space (in %) around interpolated area for the 2D histogram. | |
void | SetMarginBinsContent (Double_t z=0.) |
Sets the histogram bin height for points lying outside the TGraphDelaunay convex hull ie: the bins in the margin. | |
void | SetMaximum (Double_t maximum=-1111) |
Set maximum. | |
void | SetMaxIter (Int_t n=100000) |
void | SetMinimum (Double_t minimum=-1111) |
Set minimum. | |
void | SetName (const char *name) override |
Changes the name of this 2D graph. | |
void | SetNameTitle (const char *name, const char *title) override |
Change the name and title of this 2D graph. | |
void | SetNpx (Int_t npx=40) |
Sets the number of bins along X used to draw the function. | |
void | SetNpy (Int_t npx=40) |
Sets the number of bins along Y used to draw the function. | |
virtual void | SetPoint (Int_t point, Double_t x, Double_t y, Double_t z) |
Sets point number n. | |
void | SetTitle (const char *title="") override |
Sets the 2D graph title. | |
void | Streamer (TBuffer &) override |
Stream a class object. | |
void | StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b) |
Public Member Functions inherited from TNamed | |
TNamed () | |
TNamed (const char *name, const char *title) | |
TNamed (const TNamed &named) | |
TNamed copy ctor. | |
TNamed (const TString &name, const TString &title) | |
virtual | ~TNamed () |
TNamed destructor. | |
void | Clear (Option_t *option="") override |
Set name and title to empty strings (""). | |
TObject * | Clone (const char *newname="") const override |
Make a clone of an object using the Streamer facility. | |
Int_t | Compare (const TObject *obj) const override |
Compare two TNamed objects. | |
void | Copy (TObject &named) const override |
Copy this to obj. | |
virtual void | FillBuffer (char *&buffer) |
Encode TNamed into output buffer. | |
const char * | GetName () const override |
Returns name of object. | |
const char * | GetTitle () const override |
Returns title of object. | |
ULong_t | Hash () const override |
Return hash value for this object. | |
TClass * | IsA () const override |
Bool_t | IsSortable () const override |
void | ls (Option_t *option="") const override |
List TNamed name and title. | |
TNamed & | operator= (const TNamed &rhs) |
TNamed assignment operator. | |
void | Print (Option_t *option="") const override |
Print TNamed name and title. | |
virtual Int_t | Sizeof () const |
Return size of the TNamed part of the TObject. | |
void | Streamer (TBuffer &) override |
Stream an object of class TObject. | |
void | StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b) |
Public Member Functions inherited from TObject | |
TObject () | |
TObject constructor. | |
TObject (const TObject &object) | |
TObject copy ctor. | |
virtual | ~TObject () |
TObject destructor. | |
void | AbstractMethod (const char *method) const |
Use this method to implement an "abstract" method that you don't want to leave purely abstract. | |
virtual void | AppendPad (Option_t *option="") |
Append graphics object to current pad. | |
ULong_t | CheckedHash () |
Check and record whether this class has a consistent Hash/RecursiveRemove setup (*) and then return the regular Hash value for this object. | |
virtual const char * | ClassName () const |
Returns name of class to which the object belongs. | |
virtual void | Delete (Option_t *option="") |
Delete this object. | |
virtual void | DrawClass () const |
Draw class inheritance tree of the class to which this object belongs. | |
virtual TObject * | DrawClone (Option_t *option="") const |
Draw a clone of this object in the current selected pad with: gROOT->SetSelectedPad(c1) . | |
virtual void | Dump () const |
Dump contents of object on stdout. | |
virtual void | Error (const char *method, const char *msgfmt,...) const |
Issue error message. | |
virtual void | Execute (const char *method, const char *params, Int_t *error=nullptr) |
Execute method on this object with the given parameter string, e.g. | |
virtual void | Execute (TMethod *method, TObjArray *params, Int_t *error=nullptr) |
Execute method on this object with parameters stored in the TObjArray. | |
virtual void | Fatal (const char *method, const char *msgfmt,...) const |
Issue fatal error message. | |
virtual Option_t * | GetDrawOption () const |
Get option used by the graphics system to draw this object. | |
virtual const char * | GetIconName () const |
Returns mime type name of object. | |
virtual char * | GetObjectInfo (Int_t px, Int_t py) const |
Returns string containing info about the object at position (px,py). | |
virtual Option_t * | GetOption () const |
virtual UInt_t | GetUniqueID () const |
Return the unique object id. | |
virtual Bool_t | HandleTimer (TTimer *timer) |
Execute action in response of a timer timing out. | |
Bool_t | HasInconsistentHash () const |
Return true is the type of this object is known to have an inconsistent setup for Hash and RecursiveRemove (i.e. | |
virtual void | Info (const char *method, const char *msgfmt,...) const |
Issue info message. | |
virtual Bool_t | InheritsFrom (const char *classname) const |
Returns kTRUE if object inherits from class "classname". | |
virtual Bool_t | InheritsFrom (const TClass *cl) const |
Returns kTRUE if object inherits from TClass cl. | |
virtual void | Inspect () const |
Dump contents of this object in a graphics canvas. | |
void | InvertBit (UInt_t f) |
Bool_t | IsDestructed () const |
IsDestructed. | |
virtual Bool_t | IsEqual (const TObject *obj) const |
Default equal comparison (objects are equal if they have the same address in memory). | |
virtual Bool_t | IsFolder () const |
Returns kTRUE in case object contains browsable objects (like containers or lists of other objects). | |
R__ALWAYS_INLINE Bool_t | IsOnHeap () const |
R__ALWAYS_INLINE Bool_t | IsZombie () const |
void | MayNotUse (const char *method) const |
Use this method to signal that a method (defined in a base class) may not be called in a derived class (in principle against good design since a child class should not provide less functionality than its parent, however, sometimes it is necessary). | |
virtual Bool_t | Notify () |
This method must be overridden to handle object notification (the base implementation is no-op). | |
void | Obsolete (const char *method, const char *asOfVers, const char *removedFromVers) const |
Use this method to declare a method obsolete. | |
void | operator delete (void *ptr) |
Operator delete. | |
void | operator delete (void *ptr, void *vp) |
Only called by placement new when throwing an exception. | |
void | operator delete[] (void *ptr) |
Operator delete []. | |
void | operator delete[] (void *ptr, void *vp) |
Only called by placement new[] when throwing an exception. | |
void * | operator new (size_t sz) |
void * | operator new (size_t sz, void *vp) |
void * | operator new[] (size_t sz) |
void * | operator new[] (size_t sz, void *vp) |
TObject & | operator= (const TObject &rhs) |
TObject assignment operator. | |
virtual void | Pop () |
Pop on object drawn in a pad to the top of the display list. | |
virtual Int_t | Read (const char *name) |
Read contents of object with specified name from the current directory. | |
virtual void | RecursiveRemove (TObject *obj) |
Recursively remove this object from a list. | |
void | ResetBit (UInt_t f) |
virtual void | SaveAs (const char *filename="", Option_t *option="") const |
Save this object in the file specified by filename. | |
void | SetBit (UInt_t f) |
void | SetBit (UInt_t f, Bool_t set) |
Set or unset the user status bits as specified in f. | |
virtual void | SetDrawOption (Option_t *option="") |
Set drawing option for object. | |
virtual void | SetUniqueID (UInt_t uid) |
Set the unique object id. | |
void | StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b) |
virtual void | SysError (const char *method, const char *msgfmt,...) const |
Issue system error message. | |
R__ALWAYS_INLINE Bool_t | TestBit (UInt_t f) const |
Int_t | TestBits (UInt_t f) const |
virtual void | UseCurrentStyle () |
Set current style settings in this object This function is called when either TCanvas::UseCurrentStyle or TROOT::ForceStyle have been invoked. | |
virtual void | Warning (const char *method, const char *msgfmt,...) const |
Issue warning message. | |
virtual Int_t | Write (const char *name=nullptr, Int_t option=0, Int_t bufsize=0) |
Write this object to the current directory. | |
virtual Int_t | Write (const char *name=nullptr, Int_t option=0, Int_t bufsize=0) const |
Write this object to the current directory. | |
Public Member Functions inherited from TAttLine | |
TAttLine () | |
AttLine default constructor. | |
TAttLine (Color_t lcolor, Style_t lstyle, Width_t lwidth) | |
AttLine normal constructor. | |
virtual | ~TAttLine () |
AttLine destructor. | |
void | Copy (TAttLine &attline) const |
Copy this line attributes to a new TAttLine. | |
Int_t | DistancetoLine (Int_t px, Int_t py, Double_t xp1, Double_t yp1, Double_t xp2, Double_t yp2) |
Compute distance from point px,py to a line. | |
virtual Color_t | GetLineColor () const |
Return the line color. | |
virtual Style_t | GetLineStyle () const |
Return the line style. | |
virtual Width_t | GetLineWidth () const |
Return the line width. | |
virtual void | Modify () |
Change current line attributes if necessary. | |
virtual void | ResetAttLine (Option_t *option="") |
Reset this line attributes to default values. | |
virtual void | SaveLineAttributes (std::ostream &out, const char *name, Int_t coldef=1, Int_t stydef=1, Int_t widdef=1) |
Save line attributes as C++ statement(s) on output stream out. | |
virtual void | SetLineAttributes () |
Invoke the DialogCanvas Line attributes. | |
virtual void | SetLineColor (Color_t lcolor) |
Set the line color. | |
virtual void | SetLineColorAlpha (Color_t lcolor, Float_t lalpha) |
Set a transparent line color. | |
virtual void | SetLineStyle (Style_t lstyle) |
Set the line style. | |
virtual void | SetLineWidth (Width_t lwidth) |
Set the line width. | |
void | StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b) |
Public Member Functions inherited from TAttFill | |
TAttFill () | |
AttFill default constructor. | |
TAttFill (Color_t fcolor, Style_t fstyle) | |
AttFill normal constructor. | |
virtual | ~TAttFill () |
AttFill destructor. | |
void | Copy (TAttFill &attfill) const |
Copy this fill attributes to a new TAttFill. | |
virtual Color_t | GetFillColor () const |
Return the fill area color. | |
virtual Style_t | GetFillStyle () const |
Return the fill area style. | |
virtual Bool_t | IsTransparent () const |
virtual void | Modify () |
Change current fill area attributes if necessary. | |
virtual void | ResetAttFill (Option_t *option="") |
Reset this fill attributes to default values. | |
virtual void | SaveFillAttributes (std::ostream &out, const char *name, Int_t coldef=1, Int_t stydef=1001) |
Save fill attributes as C++ statement(s) on output stream out. | |
virtual void | SetFillAttributes () |
Invoke the DialogCanvas Fill attributes. | |
virtual void | SetFillColor (Color_t fcolor) |
Set the fill area color. | |
virtual void | SetFillColorAlpha (Color_t fcolor, Float_t falpha) |
Set a transparent fill color. | |
virtual void | SetFillStyle (Style_t fstyle) |
Set the fill area style. | |
void | StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b) |
Public Member Functions inherited from TAttMarker | |
TAttMarker () | |
TAttMarker default constructor. | |
TAttMarker (Color_t color, Style_t style, Size_t msize) | |
TAttMarker normal constructor. | |
virtual | ~TAttMarker () |
TAttMarker destructor. | |
void | Copy (TAttMarker &attmarker) const |
Copy this marker attributes to a new TAttMarker. | |
virtual Color_t | GetMarkerColor () const |
Return the marker color. | |
virtual Size_t | GetMarkerSize () const |
Return the marker size. | |
virtual Style_t | GetMarkerStyle () const |
Return the marker style. | |
virtual void | Modify () |
Change current marker attributes if necessary. | |
virtual void | ResetAttMarker (Option_t *toption="") |
Reset this marker attributes to the default values. | |
virtual void | SaveMarkerAttributes (std::ostream &out, const char *name, Int_t coldef=1, Int_t stydef=1, Int_t sizdef=1) |
Save line attributes as C++ statement(s) on output stream out. | |
virtual void | SetMarkerAttributes () |
Invoke the DialogCanvas Marker attributes. | |
virtual void | SetMarkerColor (Color_t mcolor=1) |
Set the marker color. | |
virtual void | SetMarkerColorAlpha (Color_t mcolor, Float_t malpha) |
Set a transparent marker color. | |
virtual void | SetMarkerSize (Size_t msize=1) |
Set the marker size. | |
virtual void | SetMarkerStyle (Style_t mstyle=1) |
Set the marker style. | |
void | StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b) |
Static Public Member Functions | |
static TClass * | Class () |
static const char * | Class_Name () |
static constexpr Version_t | Class_Version () |
static const char * | DeclFileName () |
Static Public Member Functions inherited from TNamed | |
static TClass * | Class () |
static const char * | Class_Name () |
static constexpr Version_t | Class_Version () |
static const char * | DeclFileName () |
Static Public Member Functions inherited from TObject | |
static TClass * | Class () |
static const char * | Class_Name () |
static constexpr Version_t | Class_Version () |
static const char * | DeclFileName () |
static Longptr_t | GetDtorOnly () |
Return destructor only flag. | |
static Bool_t | GetObjectStat () |
Get status of object stat flag. | |
static void | SetDtorOnly (void *obj) |
Set destructor only flag. | |
static void | SetObjectStat (Bool_t stat) |
Turn on/off tracking of objects in the TObjectTable. | |
Static Public Member Functions inherited from TAttLine | |
static TClass * | Class () |
static const char * | Class_Name () |
static constexpr Version_t | Class_Version () |
static const char * | DeclFileName () |
Static Public Member Functions inherited from TAttFill | |
static TClass * | Class () |
static const char * | Class_Name () |
static constexpr Version_t | Class_Version () |
static const char * | DeclFileName () |
Static Public Member Functions inherited from TAttMarker | |
static TClass * | Class () |
static const char * | Class_Name () |
static constexpr Version_t | Class_Version () |
static const char * | DeclFileName () |
static Width_t | GetMarkerLineWidth (Style_t style) |
Internal helper function that returns the line width of the given marker style (0 = filled marker) | |
static Style_t | GetMarkerStyleBase (Style_t style) |
Internal helper function that returns the corresponding marker style with line width 1 for the given style. | |
Protected Member Functions | |
void | Build (Int_t n) |
Creates the 2D graph basic data structure. | |
Protected Member Functions inherited from TObject | |
virtual void | DoError (int level, const char *location, const char *fmt, va_list va) const |
Interface to ErrorHandler (protected). | |
void | MakeZombie () |
Protected Attributes | |
TObject * | fDelaunay |
! Pointer to Delaunay interpolator object | |
TDirectory * | fDirectory |
!Pointer to directory holding this 2D graph | |
TList * | fFunctions |
Pointer to list of functions (fits and user) | |
TH2D * | fHistogram |
!2D histogram of z values linearly interpolated on the triangles | |
Double_t | fMargin |
Extra space (in %) around interpolated area for fHistogram. | |
Double_t | fMaximum |
Maximum value for plotting along z. | |
Int_t | fMaxIter |
Maximum number of iterations to find Delaunay triangles. | |
Double_t | fMinimum |
Minimum value for plotting along z. | |
Int_t | fNpoints |
Number of points in the data set. | |
Int_t | fNpx |
Number of bins along X in fHistogram. | |
Int_t | fNpy |
Number of bins along Y in fHistogram. | |
TVirtualHistPainter * | fPainter |
!Pointer to histogram painter | |
Int_t | fSize |
!Real size of fX, fY and fZ | |
Double_t * | fX |
[fNpoints] | |
Double_t * | fY |
[fNpoints] Data set to be plotted | |
Double_t * | fZ |
[fNpoints] | |
Double_t | fZout |
fHistogram bin height for points lying outside the interpolated area | |
Protected Attributes inherited from TNamed | |
TString | fName |
TString | fTitle |
Protected Attributes inherited from TAttLine | |
Color_t | fLineColor |
Line color. | |
Style_t | fLineStyle |
Line style. | |
Width_t | fLineWidth |
Line width. | |
Protected Attributes inherited from TAttFill | |
Color_t | fFillColor |
Fill area color. | |
Style_t | fFillStyle |
Fill area style. | |
Protected Attributes inherited from TAttMarker | |
Color_t | fMarkerColor |
Marker color. | |
Size_t | fMarkerSize |
Marker size. | |
Style_t | fMarkerStyle |
Marker style. | |
Private Types | |
enum | EStatusBits { kOldInterpolation = (1ULL << ( 15 )) } |
Private Member Functions | |
void | CreateInterpolator (Bool_t oldInterp) |
Add a TGraphDelaunay in the list of the fHistogram's functions. | |
Private Attributes | |
Bool_t | fUserHisto |
Additional Inherited Members | |
Public Types inherited from TObject | |
enum | { kIsOnHeap = 0x01000000 , kNotDeleted = 0x02000000 , kZombie = 0x04000000 , kInconsistent = 0x08000000 , kBitMask = 0x00ffffff } |
enum | { kSingleKey = (1ULL << ( 0 )) , kOverwrite = (1ULL << ( 1 )) , kWriteDelete = (1ULL << ( 2 )) } |
enum | EDeprecatedStatusBits { kObjInCanvas = (1ULL << ( 3 )) } |
enum | EStatusBits { kCanDelete = (1ULL << ( 0 )) , kMustCleanup = (1ULL << ( 3 )) , kIsReferenced = (1ULL << ( 4 )) , kHasUUID = (1ULL << ( 5 )) , kCannotPick = (1ULL << ( 6 )) , kNoContextMenu = (1ULL << ( 8 )) , kInvalidObject = (1ULL << ( 13 )) } |
Protected Types inherited from TObject | |
enum | { kOnlyPrepStep = (1ULL << ( 3 )) } |
#include <TGraph2D.h>
|
private |
Enumerator | |
---|---|
kOldInterpolation |
Definition at line 69 of file TGraph2D.h.
TGraph2D::TGraph2D | ( | ) |
Graph2D default constructor.
Definition at line 238 of file TGraph2D.cxx.
TGraph2D::TGraph2D | ( | Int_t | n | ) |
Graph2D constructor.
The arrays fX, fY and fZ should be filled via calls to SetPoint
Definition at line 388 of file TGraph2D.cxx.
Graph2D constructor with three vectors of ints as input.
Definition at line 265 of file TGraph2D.cxx.
Graph2D constructor with three vectors of floats as input.
Definition at line 283 of file TGraph2D.cxx.
Graph2D constructor with three vectors of doubles as input.
Definition at line 301 of file TGraph2D.cxx.
TGraph2D::TGraph2D | ( | TH2 * | h2 | ) |
Graph2D constructor with a TH2 (h2) as input.
Only the h2's bins within the X and Y axis ranges are used. Empty bins, recognized when both content and errors are zero, are excluded.
Definition at line 321 of file TGraph2D.cxx.
TGraph2D::TGraph2D | ( | const char * | name, |
const char * | title, | ||
Int_t | n, | ||
Double_t * | x, | ||
Double_t * | y, | ||
Double_t * | z | ||
) |
Graph2D constructor with name, title and three vectors of doubles as input.
name : name of 2D graph (avoid blanks) title : 2D graph title if title is of the form "stringt;stringx;stringy;stringz" the 2D graph title is set to stringt, the x axis title to stringx, the y axis title to stringy,etc
Definition at line 368 of file TGraph2D.cxx.
TGraph2D::TGraph2D | ( | const char * | filename, |
const char * | format = "%lg %lg %lg" , |
||
Option_t * | option = "" |
||
) |
Graph2D constructor reading input from filename filename is assumed to contain at least three columns of numbers.
For files separated by a specific delimiter different from ' ' and '\t' (e.g. ';' in csv files) you can avoid using %*s to bypass this delimiter by explicitly specify the "option" argument, e.g. option=" \\t,;" for columns of figures separated by any of these characters (' ', '\t', ',', ';') used once (e.g. "1;1") or in a combined way (" 1;,;; 1"). Note in that case, the instantiation is about 2 times slower.
Definition at line 410 of file TGraph2D.cxx.
TGraph2D::TGraph2D | ( | const TGraph2D & | g | ) |
Graph2D copy constructor.
copy everything apart from the list of contained functions
Definition at line 530 of file TGraph2D.cxx.
|
override |
TGraph2D destructor.
Definition at line 556 of file TGraph2D.cxx.
Append a new point to the graph.
Definition at line 93 of file TGraph2D.h.
|
overridevirtual |
|
protected |
Creates the 2D graph basic data structure.
Definition at line 610 of file TGraph2D.cxx.
|
static |
|
inlinestaticconstexpr |
Definition at line 169 of file TGraph2D.h.
|
overridevirtual |
Free all memory allocated by this object.
Reimplemented from TObject.
Definition at line 657 of file TGraph2D.cxx.
|
private |
Add a TGraphDelaunay in the list of the fHistogram's functions.
Definition at line 944 of file TGraph2D.cxx.
|
inlinestatic |
Definition at line 169 of file TGraph2D.h.
|
virtual |
Perform the automatic addition of the graph to the given directory.
Note this function is called in place when the semantic requires this object to be added to a directory (I.e. when being read from a TKey or being Cloned)
Definition at line 691 of file TGraph2D.cxx.
Computes distance from point px,py to a graph.
Reimplemented from TObject.
Definition at line 706 of file TGraph2D.cxx.
|
overridevirtual |
Specific drawing options can be used to paint a TGraph2D:
A TGraph2D can be also drawn with ANY options valid to draw a 2D histogram.
When a TGraph2D is drawn with one of the 2D histogram drawing option, a intermediate 2D histogram is filled using the Delaunay triangles technique to interpolate the data set.
Reimplemented from TObject.
Definition at line 738 of file TGraph2D.cxx.
Executes action corresponding to one event.
Reimplemented from TObject.
Definition at line 758 of file TGraph2D.cxx.
|
overridevirtual |
search object named name in the list of functions
Reimplemented from TObject.
Definition at line 767 of file TGraph2D.cxx.
search object obj in the list of functions
Reimplemented from TObject.
Definition at line 777 of file TGraph2D.cxx.
|
virtual |
Fits this graph with function with name fname Predefined functions such as gaus, expo and poln are automatically created by ROOT.
fname can also be a formula, accepted by the linear fitter (linear parts divided by "++" sign), for example "x++sin(y)" for fitting "[0]*x+[1]*sin(y)"
Definition at line 791 of file TGraph2D.cxx.
|
virtual |
Fits this 2D graph with function f2.
f2 is an already predefined function created by TF2.
See TGraph::Fit for the available fitting options and fitting notes
Definition at line 818 of file TGraph2D.cxx.
|
virtual |
Display a GUI panel with all graph fit options.
See class TFitEditor for example
Definition at line 837 of file TGraph2D.cxx.
Returns the X and Y graphs building a contour.
A contour level may consist in several parts not connected to each other. This function returns them in a graphs' list.
Definition at line 896 of file TGraph2D.cxx.
|
inline |
Definition at line 106 of file TGraph2D.h.
This function is called by Graph2DFitChisquare.
It always returns a negative value. Real implementation in TGraph2DErrors
Reimplemented in TGraph2DAsymmErrors, and TGraph2DErrors.
Definition at line 915 of file TGraph2D.cxx.
This function is called by Graph2DFitChisquare.
It always returns a negative value. Real implementation in TGraph2DErrors
Reimplemented in TGraph2DAsymmErrors, and TGraph2DErrors.
Definition at line 925 of file TGraph2D.cxx.
This function is called by Graph2DFitChisquare.
It always returns a negative value. Real implementation in TGraph2DErrors
Reimplemented in TGraph2DAsymmErrors, and TGraph2DErrors.
Definition at line 935 of file TGraph2D.cxx.
|
inlinevirtual |
Reimplemented in TGraph2DErrors.
Definition at line 124 of file TGraph2D.h.
|
inlinevirtual |
Reimplemented in TGraph2DAsymmErrors.
Definition at line 128 of file TGraph2D.h.
|
inlinevirtual |
Reimplemented in TGraph2DAsymmErrors.
Definition at line 127 of file TGraph2D.h.
|
inlinevirtual |
Reimplemented in TGraph2DErrors.
Definition at line 125 of file TGraph2D.h.
|
inlinevirtual |
Reimplemented in TGraph2DAsymmErrors.
Definition at line 130 of file TGraph2D.h.
|
inlinevirtual |
Reimplemented in TGraph2DAsymmErrors.
Definition at line 129 of file TGraph2D.h.
|
inlinevirtual |
Reimplemented in TGraph2DErrors.
Definition at line 126 of file TGraph2D.h.
|
inlinevirtual |
Reimplemented in TGraph2DAsymmErrors.
Definition at line 132 of file TGraph2D.h.
|
inlinevirtual |
Reimplemented in TGraph2DAsymmErrors.
Definition at line 131 of file TGraph2D.h.
By default returns a pointer to the Delaunay histogram.
If fHistogram doesn't exist, books the 2D histogram fHistogram with a margin around the hull. Calls TGraphDelaunay::Interpolate at each bin centre to build up an interpolated 2D histogram.
If the "empty" option is selected, returns an empty histogram booked with the limits of fX, fY and fZ. This option is used when the data set is drawn with markers only. In that particular case there is no need to find the Delaunay triangles.
By default use the new interpolation routine based on Triangles If the option "old" the old interpolation is used
Definition at line 979 of file TGraph2D.cxx.
|
inline |
Definition at line 110 of file TGraph2D.h.
|
inline |
Definition at line 114 of file TGraph2D.h.
|
inline |
Definition at line 115 of file TGraph2D.h.
|
inline |
Definition at line 116 of file TGraph2D.h.
|
inline |
Definition at line 120 of file TGraph2D.h.
|
inline |
Definition at line 107 of file TGraph2D.h.
|
inline |
Definition at line 108 of file TGraph2D.h.
Get x, y and z values for point number i.
The function returns -1 in case of an invalid request or the point number otherwise
Definition at line 1195 of file TGraph2D.cxx.
|
inline |
Definition at line 121 of file TGraph2D.h.
TAxis * TGraph2D::GetXaxis | ( | ) | const |
Get x axis of the graph.
Definition at line 861 of file TGraph2D.cxx.
Double_t TGraph2D::GetXmax | ( | ) | const |
Returns the X maximum.
Definition at line 1129 of file TGraph2D.cxx.
|
inlinevirtual |
Reimplemented in TGraph2DAsymmErrors, and TGraph2DErrors.
Definition at line 139 of file TGraph2D.h.
Double_t TGraph2D::GetXmin | ( | ) | const |
Returns the X minimum.
Definition at line 1140 of file TGraph2D.cxx.
|
inlinevirtual |
Reimplemented in TGraph2DAsymmErrors, and TGraph2DErrors.
Definition at line 140 of file TGraph2D.h.
|
inline |
Definition at line 122 of file TGraph2D.h.
TAxis * TGraph2D::GetYaxis | ( | ) | const |
Get y axis of the graph.
Definition at line 872 of file TGraph2D.cxx.
Double_t TGraph2D::GetYmax | ( | ) | const |
Returns the Y maximum.
Definition at line 1151 of file TGraph2D.cxx.
|
inlinevirtual |
Reimplemented in TGraph2DAsymmErrors, and TGraph2DErrors.
Definition at line 141 of file TGraph2D.h.
Double_t TGraph2D::GetYmin | ( | ) | const |
Returns the Y minimum.
Definition at line 1162 of file TGraph2D.cxx.
|
inlinevirtual |
Reimplemented in TGraph2DAsymmErrors, and TGraph2DErrors.
Definition at line 142 of file TGraph2D.h.
|
inline |
Definition at line 123 of file TGraph2D.h.
TAxis * TGraph2D::GetZaxis | ( | ) | const |
Get z axis of the graph.
Definition at line 883 of file TGraph2D.cxx.
Double_t TGraph2D::GetZmax | ( | ) | const |
Returns the Z maximum.
Definition at line 1173 of file TGraph2D.cxx.
|
inlinevirtual |
Reimplemented in TGraph2DAsymmErrors, and TGraph2DErrors.
Definition at line 143 of file TGraph2D.h.
Double_t TGraph2D::GetZmin | ( | ) | const |
Returns the Z minimum.
Definition at line 1184 of file TGraph2D.cxx.
|
inlinevirtual |
Reimplemented in TGraph2DAsymmErrors, and TGraph2DErrors.
Definition at line 144 of file TGraph2D.h.
Finds the z value at the position (x,y) thanks to the Delaunay interpolation.
Definition at line 1209 of file TGraph2D.cxx.
|
inlineoverridevirtual |
Reimplemented from TObject.
Reimplemented in TGraph2DAsymmErrors, and TGraph2DErrors.
Definition at line 169 of file TGraph2D.h.
Graph2D operator "=".
Definition at line 565 of file TGraph2D.cxx.
|
overridevirtual |
Paints this 2D graph with its current attributes.
Reimplemented from TObject.
Definition at line 1246 of file TGraph2D.cxx.
|
overridevirtual |
Print 2D graph values.
Reimplemented from TObject.
Reimplemented in TGraph2DAsymmErrors, and TGraph2DErrors.
Definition at line 1288 of file TGraph2D.cxx.
Projects a 2-d graph into 1 or 2-d histograms depending on the option parameter.
option may contain a combination of the characters x,y,z:
Definition at line 1305 of file TGraph2D.cxx.
Deletes point number ipoint.
Definition at line 1392 of file TGraph2D.cxx.
|
overridevirtual |
Saves primitive as a C++ statement(s) on output stream out.
Reimplemented from TObject.
Definition at line 1428 of file TGraph2D.cxx.
Multiply the values of a TGraph2D by a constant c1.
If option contains "x" the x values are scaled If option contains "y" the y values are scaled If option contains "z" the z values are scaled If option contains "xyz" all three x, y and z values are scaled
Reimplemented in TGraph2DAsymmErrors, and TGraph2DErrors.
Definition at line 1482 of file TGraph2D.cxx.
|
virtual |
Set number of points in the 2D graph.
Existing coordinates are preserved. New coordinates above fNpoints are preset to 0.
Reimplemented in TGraph2DAsymmErrors, and TGraph2DErrors.
Definition at line 1504 of file TGraph2D.cxx.
|
virtual |
By default when an 2D graph is created, it is added to the list of 2D graph objects in the current directory in memory.
This method removes reference to this 2D graph from current directory and add reference to new directory dir. dir can be 0 in which case the 2D graph does not belong to any directory.
Definition at line 1520 of file TGraph2D.cxx.
Sets the histogram to be filled.
If the 2D graph needs to be save in a TFile the following set should be followed to read it back:
By default use the new interpolation routine based on Triangles If the option "old" the old interpolation is used
Definition at line 1544 of file TGraph2D.cxx.
void TGraph2D::SetMargin | ( | Double_t | m = 0.1 | ) |
Sets the extra space (in %) around interpolated area for the 2D histogram.
Definition at line 1561 of file TGraph2D.cxx.
void TGraph2D::SetMarginBinsContent | ( | Double_t | z = 0. | ) |
Sets the histogram bin height for points lying outside the TGraphDelaunay convex hull ie: the bins in the margin.
Definition at line 1581 of file TGraph2D.cxx.
void TGraph2D::SetMaximum | ( | Double_t | maximum = -1111 | ) |
Set maximum.
Definition at line 1595 of file TGraph2D.cxx.
|
inline |
Definition at line 160 of file TGraph2D.h.
void TGraph2D::SetMinimum | ( | Double_t | minimum = -1111 | ) |
Set minimum.
Definition at line 1606 of file TGraph2D.cxx.
|
overridevirtual |
Changes the name of this 2D graph.
Reimplemented from TNamed.
Definition at line 1617 of file TGraph2D.cxx.
|
overridevirtual |
Change the name and title of this 2D graph.
Reimplemented from TNamed.
Definition at line 1631 of file TGraph2D.cxx.
void TGraph2D::SetNpx | ( | Int_t | npx = 40 | ) |
Sets the number of bins along X used to draw the function.
Definition at line 1645 of file TGraph2D.cxx.
void TGraph2D::SetNpy | ( | Int_t | npx = 40 | ) |
Sets the number of bins along Y used to draw the function.
Definition at line 1667 of file TGraph2D.cxx.
Sets point number n.
If n is greater than the current size, the arrays are automatically extended.
Reimplemented in TGraph2DAsymmErrors, and TGraph2DErrors.
Definition at line 1691 of file TGraph2D.cxx.
|
overridevirtual |
Sets the 2D graph title.
This method allows to change the global title and the axis' titles of a 2D graph. If g
is the 2D graph one can do:
Reimplemented from TNamed.
Definition at line 1738 of file TGraph2D.cxx.
|
overridevirtual |
Stream a class object.
Reimplemented from TObject.
Reimplemented in TGraph2DAsymmErrors, and TGraph2DErrors.
Definition at line 1748 of file TGraph2D.cxx.
|
inline |
Definition at line 169 of file TGraph2D.h.
|
protected |
! Pointer to Delaunay interpolator object
Definition at line 59 of file TGraph2D.h.
|
protected |
!Pointer to directory holding this 2D graph
Definition at line 60 of file TGraph2D.h.
|
protected |
Pointer to list of functions (fits and user)
Definition at line 57 of file TGraph2D.h.
|
protected |
!2D histogram of z values linearly interpolated on the triangles
Definition at line 58 of file TGraph2D.h.
|
protected |
Extra space (in %) around interpolated area for fHistogram.
Definition at line 55 of file TGraph2D.h.
|
protected |
Maximum value for plotting along z.
Definition at line 54 of file TGraph2D.h.
|
protected |
Maximum number of iterations to find Delaunay triangles.
Definition at line 48 of file TGraph2D.h.
|
protected |
Minimum value for plotting along z.
Definition at line 53 of file TGraph2D.h.
|
protected |
Number of points in the data set.
Definition at line 45 of file TGraph2D.h.
|
protected |
Number of bins along X in fHistogram.
Definition at line 46 of file TGraph2D.h.
|
protected |
Number of bins along Y in fHistogram.
Definition at line 47 of file TGraph2D.h.
|
protected |
!Pointer to histogram painter
Definition at line 61 of file TGraph2D.h.
|
protected |
!Real size of fX, fY and fZ
Definition at line 49 of file TGraph2D.h.
|
private |
Definition at line 67 of file TGraph2D.h.
|
protected |
[fNpoints]
Definition at line 50 of file TGraph2D.h.
|
protected |
[fNpoints] Data set to be plotted
Definition at line 51 of file TGraph2D.h.
|
protected |
[fNpoints]
Definition at line 52 of file TGraph2D.h.
|
protected |
fHistogram bin height for points lying outside the interpolated area
Definition at line 56 of file TGraph2D.h.