ROOT
6.06/09
Reference Guide
|
Graphics object made of three arrays X, Y and Z with the same number of points each.
This class has different constructors:
TGraph2D *g = new TGraph2D(n, x, y, z);x, y, z arrays can be doubles, floats, or ints.
TGraph2D *g = new TGraph2D(n);The internal arrays are then filled with
SetPoint()
. The following line fills the internal arrays at the position i
with the values x
, y
, z
. g->SetPoint(i, x, y, z);
TGraph2D *g = new TGraph2D();again
SetPoint()
must be used to fill the internal arrays.TGraph2D *g = new TGraph2D("graph.dat");Arrays are read from the ASCII file "graph.dat" according to a specifies format. The default format is
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.
Specific drawing options can be used to paint a TGraph2D:
"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. |
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.
Example:
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 50 of file TGraph2D.h.
Public Member Functions | |
TGraph2D () | |
TGraph2D (Int_t n) | |
Graph2D constructor. More... | |
TGraph2D (Int_t n, Int_t *x, Int_t *y, Int_t *z) | |
Graph2D constructor with three vectors of ints as input. More... | |
TGraph2D (Int_t n, Float_t *x, Float_t *y, Float_t *z) | |
Graph2D constructor with three vectors of floats as input. More... | |
TGraph2D (Int_t n, Double_t *x, Double_t *y, Double_t *z) | |
Graph2D constructor with three vectors of doubles as input. More... | |
TGraph2D (TH2 *h2) | |
Graph2D constructor with a TH2 (h2) as input. More... | |
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. More... | |
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. More... | |
TGraph2D (const TGraph2D &) | |
Graph2D copy constructor. More... | |
virtual | ~TGraph2D () |
TGraph2D destructor. More... | |
TGraph2D & | operator= (const TGraph2D &) |
Graph2D operator "=". More... | |
virtual void | Browse (TBrowser *) |
Browse. More... | |
virtual void | Clear (Option_t *option="") |
Free all memory allocated by this object. More... | |
virtual void | DirectoryAutoAdd (TDirectory *) |
Perform the automatic addition of the graph to the given directory. More... | |
Int_t | DistancetoPrimitive (Int_t px, Int_t py) |
Computes distance from point px,py to a graph. More... | |
virtual void | Draw (Option_t *option="") |
Specific drawing options can be used to paint a TGraph2D: More... | |
void | ExecuteEvent (Int_t event, Int_t px, Int_t py) |
Executes action corresponding to one event. More... | |
virtual TObject * | FindObject (const char *name) const |
search object named name in the list of functions More... | |
virtual TObject * | FindObject (const TObject *obj) const |
search object obj in the list of functions More... | |
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. More... | |
virtual TFitResultPtr | Fit (TF2 *f2, Option_t *option="", Option_t *goption="") |
Fits this 2D graph with function f2. More... | |
virtual void | FitPanel () |
Display a GUI panel with all graph fit options. More... | |
TList * | GetContourList (Double_t contour) |
Returns the X and Y graphs building a contour. More... | |
TDirectory * | GetDirectory () const |
Int_t | GetNpx () const |
Int_t | GetNpy () const |
TH2D * | GetHistogram (Option_t *option="") |
By default returns a pointer to the Delaunay histogram. More... | |
TList * | GetListOfFunctions () const |
virtual Double_t | GetErrorX (Int_t bin) const |
This function is called by Graph2DFitChisquare. More... | |
virtual Double_t | GetErrorY (Int_t bin) const |
This function is called by Graph2DFitChisquare. More... | |
virtual Double_t | GetErrorZ (Int_t bin) const |
This function is called by Graph2DFitChisquare. More... | |
Double_t | GetMargin () const |
Double_t | GetMaximum () const |
Double_t | GetMinimum () const |
TAxis * | GetXaxis () const |
Get x axis of the graph. More... | |
TAxis * | GetYaxis () const |
Get y axis of the graph. More... | |
TAxis * | GetZaxis () const |
Get z axis of the graph. More... | |
Int_t | GetN () const |
Double_t * | GetX () const |
Double_t * | GetY () const |
Double_t * | GetZ () const |
virtual Double_t * | GetEX () const |
virtual Double_t * | GetEY () const |
virtual Double_t * | GetEZ () const |
Double_t | GetXmax () const |
Returns the X maximum. More... | |
Double_t | GetXmin () const |
Returns the X minimum. More... | |
Double_t | GetYmax () const |
Returns the Y maximum. More... | |
Double_t | GetYmin () const |
Returns the Y minimum. More... | |
Double_t | GetZmax () const |
Returns the Z maximum. More... | |
Double_t | GetZmin () const |
Returns the Z minimum. More... | |
virtual Double_t | GetXmaxE () const |
virtual Double_t | GetXminE () const |
virtual Double_t | GetYmaxE () const |
virtual Double_t | GetYminE () const |
virtual Double_t | GetZmaxE () const |
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. More... | |
void | Paint (Option_t *option="") |
Paints this 2D graph with its current attributes. More... | |
TH1 * | Project (Option_t *option="x") const |
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 option = "x" return the x projection into a TH1D histogram option = "y" return the y projection into a TH1D histogram option = "xy" return the x versus y projection into a TH2D histogram option = "yx" return the y versus x projection into a TH2D histogram. More... | |
Int_t | RemovePoint (Int_t ipoint) |
Deletes point number ipoint. More... | |
virtual void | SavePrimitive (std::ostream &out, Option_t *option="") |
Saves primitive as a C++ statement(s) on output stream out. More... | |
virtual void | Set (Int_t n) |
Set number of points in the 2D graph. More... | |
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. More... | |
virtual void | SetHistogram (TH2 *h) |
Sets the histogram to be filled. More... | |
void | SetMargin (Double_t m=0.1) |
Sets the extra space (in %) around interpolated area for the 2D histogram. More... | |
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. More... | |
void | SetMaximum (Double_t maximum=-1111) |
Set maximum. More... | |
void | SetMinimum (Double_t minimum=-1111) |
Set minimum. More... | |
void | SetMaxIter (Int_t n=100000) |
virtual void | SetName (const char *name) |
Changes the name of this 2D graph. More... | |
virtual void | SetNameTitle (const char *name, const char *title) |
Change the name and title of this 2D graph. More... | |
void | SetNpx (Int_t npx=40) |
Sets the number of bins along X used to draw the function. More... | |
void | SetNpy (Int_t npx=40) |
Sets the number of bins along Y used to draw the function. More... | |
virtual void | SetPoint (Int_t point, Double_t x, Double_t y, Double_t z) |
Sets point number n. More... | |
virtual void | SetTitle (const char *title="") |
Sets graph title. More... | |
Public Member Functions inherited from TNamed | |
TNamed () | |
TNamed (const char *name, const char *title) | |
TNamed (const TString &name, const TString &title) | |
TNamed (const TNamed &named) | |
TNamed & | operator= (const TNamed &rhs) |
TNamed assignment operator. More... | |
virtual | ~TNamed () |
virtual TObject * | Clone (const char *newname="") const |
Make a clone of an object using the Streamer facility. More... | |
virtual Int_t | Compare (const TObject *obj) const |
Compare two TNamed objects. More... | |
virtual void | Copy (TObject &named) const |
Copy this to obj. More... | |
virtual void | FillBuffer (char *&buffer) |
Encode TNamed into output buffer. More... | |
virtual const char * | GetName () const |
Returns name of object. More... | |
virtual const char * | GetTitle () const |
Returns title of object. More... | |
virtual ULong_t | Hash () const |
Return hash value for this object. More... | |
virtual Bool_t | IsSortable () const |
virtual void | ls (Option_t *option="") const |
List TNamed name and title. More... | |
virtual void | Print (Option_t *option="") const |
Print TNamed name and title. More... | |
virtual Int_t | Sizeof () const |
Return size of the TNamed part of the TObject. More... | |
Public Member Functions inherited from TObject | |
TObject () | |
TObject (const TObject &object) | |
TObject copy ctor. More... | |
TObject & | operator= (const TObject &rhs) |
TObject assignment operator. More... | |
virtual | ~TObject () |
TObject destructor. More... | |
virtual void | AppendPad (Option_t *option="") |
Append graphics object to current pad. More... | |
virtual const char * | ClassName () const |
Returns name of class to which the object belongs. More... | |
virtual void | Delete (Option_t *option="") |
Delete this object. More... | |
virtual void | DrawClass () const |
Draw class inheritance tree of the class to which this object belongs. More... | |
virtual TObject * | DrawClone (Option_t *option="") const |
Draw a clone of this object in the current pad. More... | |
virtual void | Dump () const |
Dump contents of object on stdout. More... | |
virtual void | Execute (const char *method, const char *params, Int_t *error=0) |
Execute method on this object with the given parameter string, e.g. More... | |
virtual void | Execute (TMethod *method, TObjArray *params, Int_t *error=0) |
Execute method on this object with parameters stored in the TObjArray. More... | |
virtual Option_t * | GetDrawOption () const |
Get option used by the graphics system to draw this object. More... | |
virtual UInt_t | GetUniqueID () const |
Return the unique object id. More... | |
virtual const char * | GetIconName () const |
Returns mime type name of object. More... | |
virtual Option_t * | GetOption () const |
virtual char * | GetObjectInfo (Int_t px, Int_t py) const |
Returns string containing info about the object at position (px,py). More... | |
virtual Bool_t | HandleTimer (TTimer *timer) |
Execute action in response of a timer timing out. More... | |
virtual Bool_t | InheritsFrom (const char *classname) const |
Returns kTRUE if object inherits from class "classname". More... | |
virtual Bool_t | InheritsFrom (const TClass *cl) const |
Returns kTRUE if object inherits from TClass cl. More... | |
virtual void | Inspect () const |
Dump contents of this object in a graphics canvas. More... | |
virtual Bool_t | IsFolder () const |
Returns kTRUE in case object contains browsable objects (like containers or lists of other objects). More... | |
virtual Bool_t | IsEqual (const TObject *obj) const |
Default equal comparison (objects are equal if they have the same address in memory). More... | |
Bool_t | IsOnHeap () const |
Bool_t | IsZombie () const |
virtual Bool_t | Notify () |
This method must be overridden to handle object notification. More... | |
virtual void | Pop () |
Pop on object drawn in a pad to the top of the display list. More... | |
virtual Int_t | Read (const char *name) |
Read contents of object with specified name from the current directory. More... | |
virtual void | RecursiveRemove (TObject *obj) |
Recursively remove this object from a list. More... | |
virtual void | SaveAs (const char *filename="", Option_t *option="") const |
Save this object in the file specified by filename. More... | |
virtual void | SetDrawOption (Option_t *option="") |
Set drawing option for object. More... | |
virtual void | SetUniqueID (UInt_t uid) |
Set the unique object id. More... | |
virtual void | UseCurrentStyle () |
Set current style settings in this object This function is called when either TCanvas::UseCurrentStyle or TROOT::ForceStyle have been invoked. More... | |
virtual Int_t | Write (const char *name=0, Int_t option=0, Int_t bufsize=0) |
Write this object to the current directory. More... | |
virtual Int_t | Write (const char *name=0, Int_t option=0, Int_t bufsize=0) const |
Write this object to the current directory. More... | |
void * | operator new (size_t sz) |
void * | operator new[] (size_t sz) |
void * | operator new (size_t sz, void *vp) |
void * | operator new[] (size_t sz, void *vp) |
void | operator delete (void *ptr) |
Operator delete. More... | |
void | operator delete[] (void *ptr) |
Operator delete []. More... | |
void | SetBit (UInt_t f, Bool_t set) |
Set or unset the user status bits as specified in f. More... | |
void | SetBit (UInt_t f) |
void | ResetBit (UInt_t f) |
Bool_t | TestBit (UInt_t f) const |
Int_t | TestBits (UInt_t f) const |
void | InvertBit (UInt_t f) |
virtual void | Info (const char *method, const char *msgfmt,...) const |
Issue info message. More... | |
virtual void | Warning (const char *method, const char *msgfmt,...) const |
Issue warning message. More... | |
virtual void | Error (const char *method, const char *msgfmt,...) const |
Issue error message. More... | |
virtual void | SysError (const char *method, const char *msgfmt,...) const |
Issue system error message. More... | |
virtual void | Fatal (const char *method, const char *msgfmt,...) const |
Issue fatal error message. More... | |
void | AbstractMethod (const char *method) const |
Use this method to implement an "abstract" method that you don't want to leave purely abstract. More... | |
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). More... | |
void | Obsolete (const char *method, const char *asOfVers, const char *removedFromVers) const |
Use this method to declare a method obsolete. More... | |
Public Member Functions inherited from TAttLine | |
TAttLine () | |
AttLine default constructor. More... | |
TAttLine (Color_t lcolor, Style_t lstyle, Width_t lwidth) | |
AttLine normal constructor. More... | |
virtual | ~TAttLine () |
AttLine destructor. More... | |
void | Copy (TAttLine &attline) const |
Copy this line attributes to a new TAttLine. More... | |
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. More... | |
virtual Color_t | GetLineColor () const |
virtual Style_t | GetLineStyle () const |
virtual Width_t | GetLineWidth () const |
virtual void | Modify () |
Change current line attributes if necessary. More... | |
virtual void | ResetAttLine (Option_t *option="") |
Reset this line attributes to default values. More... | |
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. More... | |
virtual void | SetLineAttributes () |
Invoke the DialogCanvas Line attributes. More... | |
virtual void | SetLineColor (Color_t lcolor) |
virtual void | SetLineColorAlpha (Color_t lcolor, Float_t lalpha) |
Set a transparent line color. More... | |
virtual void | SetLineStyle (Style_t lstyle) |
virtual void | SetLineWidth (Width_t lwidth) |
ClassDef (TAttLine, 2) | |
Public Member Functions inherited from TAttFill | |
TAttFill () | |
TAttFill (Color_t fcolor, Style_t fstyle) | |
AttFill normal constructor. More... | |
virtual | ~TAttFill () |
AttFill destructor. More... | |
void | Copy (TAttFill &attfill) const |
Copy this fill attributes to a new TAttFill. More... | |
virtual Color_t | GetFillColor () const |
virtual Style_t | GetFillStyle () const |
virtual Bool_t | IsTransparent () const |
virtual void | Modify () |
Change current fill area attributes if necessary. More... | |
virtual void | ResetAttFill (Option_t *option="") |
Reset this fill attributes to default values. More... | |
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. More... | |
virtual void | SetFillAttributes () |
Invoke the DialogCanvas Fill attributes. More... | |
virtual void | SetFillColor (Color_t fcolor) |
virtual void | SetFillColorAlpha (Color_t fcolor, Float_t falpha) |
Set a transparent fill color. More... | |
virtual void | SetFillStyle (Style_t fstyle) |
Public Member Functions inherited from TAttMarker | |
TAttMarker () | |
TAttMarker (Color_t color, Style_t style, Size_t msize) | |
TAttMarker normal constructor. More... | |
virtual | ~TAttMarker () |
TAttMarker destructor. More... | |
void | Copy (TAttMarker &attmarker) const |
Copy this marker attributes to a new TAttMarker. More... | |
virtual Color_t | GetMarkerColor () const |
virtual Style_t | GetMarkerStyle () const |
virtual Size_t | GetMarkerSize () const |
virtual void | Modify () |
Change current marker attributes if necessary. More... | |
virtual void | ResetAttMarker (Option_t *toption="") |
Reset this marker attributes to the default values. More... | |
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. More... | |
virtual void | SetMarkerAttributes () |
Invoke the DialogCanvas Marker attributes. More... | |
virtual void | SetMarkerColor (Color_t mcolor=1) |
virtual void | SetMarkerColorAlpha (Color_t mcolor, Float_t malpha) |
Set a transparent marker color. More... | |
virtual void | SetMarkerStyle (Style_t mstyle=1) |
virtual void | SetMarkerSize (Size_t msize=1) |
ClassDef (TAttMarker, 2) | |
Protected Member Functions | |
void | Build (Int_t n) |
Pointer to histogram painter. More... | |
Protected Member Functions inherited from TObject | |
void | MakeZombie () |
virtual void | DoError (int level, const char *location, const char *fmt, va_list va) const |
Interface to ErrorHandler (protected). More... | |
Protected Attributes | |
Int_t | fNpoints |
Int_t | fNpx |
Int_t | fNpy |
Int_t | fMaxIter |
Int_t | fSize |
Double_t * | fX |
Real size of fX, fY and fZ. More... | |
Double_t * | fY |
Double_t * | fZ |
Double_t | fMinimum |
Double_t | fMaximum |
Double_t | fMargin |
Double_t | fZout |
TList * | fFunctions |
TH2D * | fHistogram |
TObject * | fDelaunay |
2D histogram of z values linearly interpolated on the triangles More... | |
TDirectory * | fDirectory |
Pointer to Delaunay interpolator object. More... | |
TVirtualHistPainter * | fPainter |
Pointer to directory holding this 2D graph. More... | |
Protected Attributes inherited from TNamed | |
TString | fName |
TString | fTitle |
Protected Attributes inherited from TAttLine | |
Color_t | fLineColor |
Style_t | fLineStyle |
Width_t | fLineWidth |
Protected Attributes inherited from TAttFill | |
Color_t | fFillColor |
Style_t | fFillStyle |
Protected Attributes inherited from TAttMarker | |
Color_t | fMarkerColor |
Style_t | fMarkerStyle |
Size_t | fMarkerSize |
Private Types | |
enum | { kOldInterpolation = BIT(15) } |
Private Attributes | |
Bool_t | fUserHisto |
Additional Inherited Members | |
Public Types inherited from TObject | |
enum | EStatusBits { kCanDelete = BIT(0), kMustCleanup = BIT(3), kObjInCanvas = BIT(3), kIsReferenced = BIT(4), kHasUUID = BIT(5), kCannotPick = BIT(6), kNoContextMenu = BIT(8), kInvalidObject = BIT(13) } |
enum | { kIsOnHeap = 0x01000000, kNotDeleted = 0x02000000, kZombie = 0x04000000, kBitMask = 0x00ffffff } |
enum | { kSingleKey = BIT(0), kOverwrite = BIT(1), kWriteDelete = BIT(2) } |
Static Public Member Functions inherited from TObject | |
static Long_t | GetDtorOnly () |
Return destructor only flag. More... | |
static void | SetDtorOnly (void *obj) |
Set destructor only flag. More... | |
static Bool_t | GetObjectStat () |
Get status of object stat flag. More... | |
static void | SetObjectStat (Bool_t stat) |
Turn on/off tracking of objects in the TObjectTable. More... | |
#include <TGraph2D.h>
|
private |
Enumerator | |
---|---|
kOldInterpolation |
Definition at line 78 of file TGraph2D.h.
TGraph2D::TGraph2D | ( | ) |
TGraph2D::TGraph2D | ( | Int_t | n | ) |
Graph2D constructor.
The arrays fX, fY and fZ should be filled via calls to SetPoint
Definition at line 370 of file TGraph2D.cxx.
Graph2D constructor with three vectors of ints as input.
Definition at line 247 of file TGraph2D.cxx.
Graph2D constructor with three vectors of floats as input.
Definition at line 265 of file TGraph2D.cxx.
Graph2D constructor with three vectors of doubles as input.
Definition at line 283 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 303 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 350 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 '' (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 (' ', '', ',', ';') used once (e.g. "1;1") or in a combined way (" 1;,;; 1"). Note in that case, the instanciation is about 2 times slower.
Definition at line 392 of file TGraph2D.cxx.
TGraph2D::TGraph2D | ( | const TGraph2D & | g | ) |
Graph2D copy constructor.
copy everything apart from the list of contained functions
Definition at line 511 of file TGraph2D.cxx.
|
virtual |
TGraph2D destructor.
Definition at line 539 of file TGraph2D.cxx.
Pointer to histogram painter.
Creates the 2D graph basic data structure.
Definition at line 592 of file TGraph2D.cxx.
Referenced by TGraph2D().
Free all memory allocated by this object.
Reimplemented from TNamed.
Definition at line 639 of file TGraph2D.cxx.
Referenced by ~TGraph2D().
|
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 672 of file TGraph2D.cxx.
Computes distance from point px,py to a graph.
Reimplemented from TObject.
Definition at line 687 of file TGraph2D.cxx.
Specific drawing options can be used to paint a TGraph2D:
"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. "CONT" : Draw contours "LINE" : Draw a 3D polyline
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 719 of file TGraph2D.cxx.
Referenced by Browse(), TAdvancedGraphicsDialog::DrawConfidenceLevels(), and unuranGraf2D().
Executes action corresponding to one event.
Reimplemented from TObject.
Definition at line 739 of file TGraph2D.cxx.
|
virtual |
search object named name in the list of functions
Reimplemented from TObject.
Definition at line 748 of file TGraph2D.cxx.
search object obj in the list of functions
Reimplemented from TObject.
Definition at line 758 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 772 of file TGraph2D.cxx.
|
virtual |
Fits this 2D graph with function f2.
f2 is an already predefined function created by TF2. Predefined functions such as gaus, expo and poln are automatically created by ROOT.
The list of fit options is given in parameter option. option = "W" Set all weights to 1; ignore error bars = "U" Use a User specified fitting algorithm (via SetFCN) = "Q" Quiet mode (minimum printing) = "V" Verbose mode (default is between Q and V) = "R" Use the Range specified in the function range = "N" Do not store the graphics function, do not draw = "0" Do not plot the result of the fit. By default the fitted function is drawn unless the option "N" above is specified. = "+" Add this new fitted function to the list of fitted functions (by default, any previous function is deleted) = "C" In case of linear fitting, not calculate the chisquare (saves time) = "EX0" When fitting a TGraphErrors do not consider errors in the coordinate = "ROB" In case of linear fitting, compute the LTS regression coefficients (robust (resistant) regression), using the default fraction of good points "ROB=0.x" - compute the LTS regression coefficients, using 0.x as a fraction of good points = "S" The result of the fit is returned in the TFitResultPtr (see below Access to the Fit Result)
In order to use the Range option, one must first create a function with the expression to be fitted. For example, if your graph2d has a defined range between -4 and 4 and you want to fit a gaussian only in the interval 1 to 3, you can do: TF2 *f2 = new TF2("f2","gaus",1,3); graph2d->Fit("f2","R");
Parameters must be initialized before invoking the Fit function. The setting of the parameter initial values is automatic for the predefined functions : poln, expo, gaus. One can however disable this automatic computation by specifying the option "B". You can specify boundary limits for some or all parameters via f2->SetParLimits(p_number, parmin, parmax); if parmin>=parmax, the parameter is fixed Note that you are not forced to fix the limits for all parameters. For example, if you fit a function with 6 parameters, you can do: func->SetParameters(0,3.1,1.e-6,0.1,-8,100); func->SetParLimits(4,-10,-4); func->SetParLimits(5, 1,1); With this setup, parameters 0->3 can vary freely Parameter 4 has boundaries [-10,-4] with initial value -8 Parameter 5 is fixed to 100.
The fit range can be specified in two ways:
By default a chi2 fitting function is used for fitting a TGraph. The function is implemented in FitUtil::EvaluateChi2. In case of TGraph2DErrors an effective chi2 is used (see TGraphErrors fit in TGraph::Fit) and is implemented in FitUtil::EvaluateChi2Effective To specify a User defined fitting function, specify option "U" and call the following functions: TVirtualFitter::Fitter(mygraph)->SetFCN(MyFittingFunction) where MyFittingFunction is of type: extern void MyFittingFunction(Int_t &npar, Double_t *gin, Double_t &f, Double_t *u, Int_t flag);
One or more object (typically a TF2*) can be added to the list of functions (fFunctions) associated to each graph. When TGraph::Fit is invoked, the fitted function is added to this list. Given a graph gr, one can retrieve an associated function with: TF2 *myfunc = gr->GetFunction("myfunc");
The function returns a TFitResultPtr which can hold a pointer to a TFitResult object. By default the TFitResultPtr contains only the status of the fit and it converts automatically to an integer. If the option "S" is instead used, TFitResultPtr contains the TFitResult and behaves as a smart pointer to it. For example one can do: TFitResultPtr r = graph->Fit("myFunc","S"); TMatrixDSym cov = r->GetCovarianceMatrix(); // to access the covariance matrix Double_t par0 = r->Value(0); // retrieve the value for the parameter 0 Double_t err0 = r->Error(0); // retrieve the error for the parameter 0 r->Print("V"); // print full information of fit including covariance matrix r->Write(); // store the result in a file
The fit parameters, error and chi2 (but not covariance matrix) can be retrieved also from the fitted function. If the graph is made persistent, the list of associated functions is also persistent. Given a pointer (see above) to an associated function myfunc, one can retrieve the function/fit parameters with calls such as: Double_t chi2 = myfunc->GetChisquare(); Double_t par0 = myfunc->GetParameter(0); //value of 1st parameter Double_t err0 = myfunc->GetParError(0); //error on first parameter
You can change the statistics box to display the fit parameters with the TStyle::SetOptFit(mode) method. This mode has four digits. mode = pcev (default = 0111) v = 1; print name/values of parameters e = 1; print errors (if e=1, v must be 1) c = 1; print Chisquare/Number of degress of freedom p = 1; print Probability
For example: gStyle->SetOptFit(1011); prints the fit probability, parameter names/values, and errors. You can change the position of the statistics box with these lines (where g is a pointer to the TGraph):
Root > TPaveStats st = (TPaveStats)g->GetListOfFunctions()->FindObject("stats") Root > st->SetX1NDC(newx1); //new x start position Root > st->SetX2NDC(newx2); //new x end position
Definition at line 917 of file TGraph2D.cxx.
|
virtual |
Display a GUI panel with all graph fit options.
See class TFitEditor for example
Definition at line 936 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 995 of file TGraph2D.cxx.
|
inline |
Definition at line 113 of file TGraph2D.h.
This function is called by Graph2DFitChisquare.
It always returns a negative value. Real implementation in TGraph2DErrors
Reimplemented in TGraph2DErrors.
Definition at line 1014 of file TGraph2D.cxx.
Referenced by ROOT::Fit::FillData(), and Graph2DFitChisquare().
This function is called by Graph2DFitChisquare.
It always returns a negative value. Real implementation in TGraph2DErrors
Reimplemented in TGraph2DErrors.
Definition at line 1024 of file TGraph2D.cxx.
Referenced by ROOT::Fit::FillData(), and Graph2DFitChisquare().
This function is called by Graph2DFitChisquare.
It always returns a negative value. Real implementation in TGraph2DErrors
Reimplemented in TGraph2DErrors.
Definition at line 1034 of file TGraph2D.cxx.
Referenced by ROOT::Fit::FillData(), Graph2DFitChisquare(), and TLinearFitter::Graph2DLinearFitter().
|
inlinevirtual |
Reimplemented in TGraph2DErrors.
Definition at line 131 of file TGraph2D.h.
Referenced by ROOT::Fit::GetDataType(), and TGraph2DPainter::TGraph2DPainter().
|
inlinevirtual |
Reimplemented in TGraph2DErrors.
Definition at line 132 of file TGraph2D.h.
Referenced by ROOT::Fit::GetDataType(), and TGraph2DPainter::TGraph2DPainter().
|
inlinevirtual |
Reimplemented in TGraph2DErrors.
Definition at line 133 of file TGraph2D.h.
Referenced by ROOT::Fit::FillData(), TFitter::GetConfidenceIntervals(), TLinearFitter::GetConfidenceIntervals(), ROOT::Fit::GetDataType(), and TGraph2DPainter::TGraph2DPainter().
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 1052 of file TGraph2D.cxx.
Referenced by GetContourList(), Interpolate(), Paint(), SetMaximum(), and SetMinimum().
|
inline |
Definition at line 117 of file TGraph2D.h.
|
inline |
Definition at line 121 of file TGraph2D.h.
|
inline |
Definition at line 122 of file TGraph2D.h.
Referenced by TGraph2DPainter::PaintLevels().
|
inline |
Definition at line 123 of file TGraph2D.h.
Referenced by TGraph2DPainter::PaintLevels().
|
inline |
Definition at line 127 of file TGraph2D.h.
Referenced by ROOT::Fit::FillData(), TFitter::GetConfidenceIntervals(), TLinearFitter::GetConfidenceIntervals(), Graph2DFitChisquare(), TLinearFitter::Graph2DLinearFitter(), TGraph2DPainter::TGraph2DPainter(), and TGraphDelaunay::TGraphDelaunay().
|
inline |
Definition at line 114 of file TGraph2D.h.
|
inline |
Definition at line 115 of file TGraph2D.h.
|
inline |
Definition at line 128 of file TGraph2D.h.
Referenced by ROOT::Fit::FillData(), TFitter::GetConfidenceIntervals(), TLinearFitter::GetConfidenceIntervals(), Graph2DFitChisquare(), TLinearFitter::Graph2DLinearFitter(), TGraph2DPainter::TGraph2DPainter(), TGraphDelaunay::TGraphDelaunay(), and unuranGraf2D().
TAxis * TGraph2D::GetXaxis | ( | ) | const |
Get x axis of the graph.
Definition at line 960 of file TGraph2D.cxx.
Double_t TGraph2D::GetXmax | ( | ) | const |
Returns the X maximum.
Definition at line 1212 of file TGraph2D.cxx.
Referenced by TGraphDelaunay::CreateTrianglesDataStructure(), HFit::GetDrawingRange(), GetXmaxE(), and Project().
|
inlinevirtual |
Reimplemented in TGraph2DErrors.
Definition at line 140 of file TGraph2D.h.
Referenced by GetHistogram().
Double_t TGraph2D::GetXmin | ( | ) | const |
Returns the X minimum.
Definition at line 1223 of file TGraph2D.cxx.
Referenced by TGraphDelaunay::CreateTrianglesDataStructure(), HFit::GetDrawingRange(), GetXminE(), and Project().
|
inlinevirtual |
Reimplemented in TGraph2DErrors.
Definition at line 141 of file TGraph2D.h.
Referenced by GetHistogram().
|
inline |
Definition at line 129 of file TGraph2D.h.
Referenced by ROOT::Fit::FillData(), TFitter::GetConfidenceIntervals(), TLinearFitter::GetConfidenceIntervals(), Graph2DFitChisquare(), TLinearFitter::Graph2DLinearFitter(), TGraph2DPainter::TGraph2DPainter(), TGraphDelaunay::TGraphDelaunay(), and unuranGraf2D().
TAxis * TGraph2D::GetYaxis | ( | ) | const |
Get y axis of the graph.
Definition at line 971 of file TGraph2D.cxx.
Double_t TGraph2D::GetYmax | ( | ) | const |
Returns the Y maximum.
Definition at line 1234 of file TGraph2D.cxx.
Referenced by TGraphDelaunay::CreateTrianglesDataStructure(), HFit::GetDrawingRange(), GetYmaxE(), and Project().
|
inlinevirtual |
Reimplemented in TGraph2DErrors.
Definition at line 142 of file TGraph2D.h.
Referenced by GetHistogram().
Double_t TGraph2D::GetYmin | ( | ) | const |
Returns the Y minimum.
Definition at line 1245 of file TGraph2D.cxx.
Referenced by TGraphDelaunay::CreateTrianglesDataStructure(), HFit::GetDrawingRange(), GetYminE(), and Project().
|
inlinevirtual |
Reimplemented in TGraph2DErrors.
Definition at line 143 of file TGraph2D.h.
Referenced by GetHistogram().
|
inline |
Definition at line 130 of file TGraph2D.h.
Referenced by ROOT::Fit::FillData(), Graph2DFitChisquare(), TLinearFitter::Graph2DLinearFitter(), TGraph2DPainter::TGraph2DPainter(), TGraphDelaunay::TGraphDelaunay(), and unuranGraf2D().
TAxis * TGraph2D::GetZaxis | ( | ) | const |
Get z axis of the graph.
Definition at line 982 of file TGraph2D.cxx.
Double_t TGraph2D::GetZmax | ( | ) | const |
Returns the Z maximum.
Definition at line 1256 of file TGraph2D.cxx.
Referenced by GetHistogram(), GetZmaxE(), and TGraph2DPainter::Paint().
|
inlinevirtual |
Reimplemented in TGraph2DErrors.
Definition at line 144 of file TGraph2D.h.
Double_t TGraph2D::GetZmin | ( | ) | const |
Returns the Z minimum.
Definition at line 1267 of file TGraph2D.cxx.
Referenced by GetHistogram(), GetZminE(), and TGraph2DPainter::Paint().
|
inlinevirtual |
Reimplemented in TGraph2DErrors.
Definition at line 145 of file TGraph2D.h.
Finds the z value at the position (x,y) thanks to the Delaunay interpolation.
Definition at line 1279 of file TGraph2D.cxx.
Graph2D operator "=".
Definition at line 548 of file TGraph2D.cxx.
Referenced by TGraph2DErrors::operator=().
Paints this 2D graph with its current attributes.
Reimplemented from TObject.
Definition at line 1316 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 option = "x" return the x projection into a TH1D histogram option = "y" return the y projection into a TH1D histogram option = "xy" return the x versus y projection into a TH2D histogram option = "yx" return the y versus x projection into a TH2D histogram.
Definition at line 1364 of file TGraph2D.cxx.
Deletes point number ipoint.
Definition at line 1451 of file TGraph2D.cxx.
Saves primitive as a C++ statement(s) on output stream out.
Reimplemented from TObject.
Definition at line 1486 of file TGraph2D.cxx.
Set number of points in the 2D graph.
Existing coordinates are preserved. New coordinates above fNpoints are preset to 0.
Reimplemented in TGraph2DErrors.
Definition at line 1532 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 1548 of file TGraph2D.cxx.
Referenced by DirectoryAutoAdd().
Sets the histogram to be filled.
If the 2D graph needs to be save in a TFile the folllowing set should be followed to read it back: 1) Create TGraph2D 2) Call g->SetHistogram(h), and do whatever you need to do 3) Save g and h to the TFile, exit 4) Open the TFile, retrieve g and h 5) Call h->SetDirectory(0) 6) Call g->SetHistogram(h) again 7) Carry on as normal
Definition at line 1569 of file TGraph2D.cxx.
Sets the extra space (in %) around interpolated area for the 2D histogram.
Definition at line 1581 of file TGraph2D.cxx.
Sets the histogram bin height for points lying outside the TGraphDelaunay convex hull ie: the bins in the margin.
Definition at line 1600 of file TGraph2D.cxx.
Set maximum.
Definition at line 1613 of file TGraph2D.cxx.
Definition at line 158 of file TGraph2D.h.
Set minimum.
Definition at line 1624 of file TGraph2D.cxx.
|
virtual |
Changes the name of this 2D graph.
Reimplemented from TNamed.
Definition at line 1635 of file TGraph2D.cxx.
Referenced by TGraph2D().
|
virtual |
Change the name and title of this 2D graph.
Reimplemented from TNamed.
Definition at line 1649 of file TGraph2D.cxx.
Sets the number of bins along X used to draw the function.
Definition at line 1663 of file TGraph2D.cxx.
Sets the number of bins along Y used to draw the function.
Definition at line 1684 of file TGraph2D.cxx.
Sets point number n.
If n is greater than the current size, the arrays are automatically extended.
Reimplemented in TGraph2DErrors.
Definition at line 1707 of file TGraph2D.cxx.
Referenced by TFitter::GetConfidenceIntervals(), TLinearFitter::GetConfidenceIntervals(), Set(), TGraph2D(), and unuranGraf2D().
|
virtual |
Sets graph title.
Reimplemented from TNamed.
Definition at line 1747 of file TGraph2D.cxx.
Referenced by TAdvancedGraphicsDialog::DrawConfidenceLevels(), SetNameTitle(), and TGraph2D().
|
protected |
2D histogram of z values linearly interpolated on the triangles
Definition at line 68 of file TGraph2D.h.
Referenced by Build(), GetHistogram(), and Interpolate().
|
protected |
Pointer to Delaunay interpolator object.
Definition at line 69 of file TGraph2D.h.
Referenced by Build(), Clear(), GetDirectory(), SavePrimitive(), SetDirectory(), SetName(), SetNameTitle(), and TGraph2D().
|
protected |
Definition at line 66 of file TGraph2D.h.
Referenced by Build(), Clear(), FindObject(), GetListOfFunctions(), SavePrimitive(), and TGraph2D().
|
protected |
Definition at line 67 of file TGraph2D.h.
Referenced by Build(), Clear(), DistancetoPrimitive(), ExecuteEvent(), GetContourList(), GetHistogram(), Interpolate(), operator=(), Paint(), RemovePoint(), SetHistogram(), SetMargin(), SetMarginBinsContent(), SetNpx(), SetNpy(), and SetTitle().
|
protected |
Definition at line 64 of file TGraph2D.h.
Referenced by Build(), GetHistogram(), GetMargin(), operator=(), and SetMargin().
|
protected |
Definition at line 63 of file TGraph2D.h.
Referenced by Build(), GetHistogram(), GetMaximum(), operator=(), and SetMaximum().
|
protected |
Definition at line 57 of file TGraph2D.h.
Referenced by Build(), GetHistogram(), and operator=().
|
protected |
Definition at line 62 of file TGraph2D.h.
Referenced by Build(), GetHistogram(), GetMinimum(), operator=(), and SetMinimum().
|
protected |
Definition at line 54 of file TGraph2D.h.
Referenced by Clear(), GetContourList(), TGraph2DErrors::GetErrorX(), TGraph2DErrors::GetErrorY(), TGraph2DErrors::GetErrorZ(), GetHistogram(), GetN(), GetXmin(), TGraph2DErrors::GetXminE(), GetYmin(), TGraph2DErrors::GetYminE(), GetZmin(), TGraph2DErrors::GetZminE(), Interpolate(), operator=(), Paint(), Project(), RemovePoint(), SavePrimitive(), TGraph2DErrors::Set(), Set(), TGraph2DErrors::SetPoint(), SetPoint(), TGraph2DErrors::SetPointError(), and TGraph2D().
|
protected |
Definition at line 55 of file TGraph2D.h.
Referenced by Build(), GetHistogram(), GetNpx(), operator=(), Project(), SetHistogram(), and SetNpx().
|
protected |
Definition at line 56 of file TGraph2D.h.
Referenced by Build(), GetHistogram(), GetNpy(), operator=(), Project(), SetHistogram(), and SetNpy().
|
protected |
Pointer to directory holding this 2D graph.
Definition at line 70 of file TGraph2D.h.
Referenced by Build(), and GetContourList().
|
protected |
Definition at line 58 of file TGraph2D.h.
Referenced by Build(), Clear(), TGraph2DErrors::operator=(), operator=(), RemovePoint(), SetPoint(), and TGraph2DErrors::TGraph2DErrors().
|
private |
Definition at line 76 of file TGraph2D.h.
Referenced by Build(), Clear(), GetHistogram(), operator=(), and SetHistogram().
|
protected |
Real size of fX, fY and fZ.
Definition at line 59 of file TGraph2D.h.
Referenced by Build(), Clear(), GetX(), GetXmax(), TGraph2DErrors::GetXmaxE(), GetXmin(), TGraph2DErrors::GetXminE(), operator=(), Project(), RemovePoint(), SavePrimitive(), TGraph2DErrors::SetPoint(), SetPoint(), and TGraph2D().
|
protected |
Definition at line 60 of file TGraph2D.h.
Referenced by Build(), Clear(), GetY(), GetYmax(), TGraph2DErrors::GetYmaxE(), GetYmin(), TGraph2DErrors::GetYminE(), operator=(), Project(), RemovePoint(), SavePrimitive(), TGraph2DErrors::SetPoint(), SetPoint(), and TGraph2D().
|
protected |
Definition at line 61 of file TGraph2D.h.
Referenced by Build(), Clear(), GetZ(), GetZmax(), TGraph2DErrors::GetZmaxE(), GetZmin(), TGraph2DErrors::GetZminE(), operator=(), Project(), RemovePoint(), SavePrimitive(), TGraph2DErrors::SetPoint(), SetPoint(), and TGraph2D().
|
protected |
Definition at line 65 of file TGraph2D.h.
Referenced by Build(), GetHistogram(), operator=(), and SetMarginBinsContent().