[root] / trunk / hist / hist / inc / TMultiGraph.h Repository:
ViewVC logotype

Log of /trunk/hist/hist/inc/TMultiGraph.h

Parent Directory Parent Directory


Links to HEAD: (view) (download) (as text) (annotate)
Sticky Revision:

Revision 44507 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Jun 4 12:30:41 2012 UTC (2 years, 7 months ago) by axel
File length: 3866 byte(s)
Diff to previous 43622 , to selected 20882
Remove
  using namespace std;
from Riostream.h, which has huge consequences for all of ROOT.
Riostream.h is now a simple wrapper for fstream, iostream, iomanip for backward compatibility; Riosfwd.h simply wraps iosfwd.

Because of templates and their inline functions, Riostream.h needed to be included in headers, too (e.g. TParameter.h), which violated the assumption that Riostream.h is not exposing its using namespace std to headers.
ROOT now requires R__ANSISTREAM, R__SSTREAM, which does not change the set of supported compilers.

Without "using namespace std", several identifiers are now prefixed by std::; e.g. roofit/* source files now have a using namespace std to keep their coding style.
TFile::MakeProject() now generates "using namespace std" to convert the CINT-style class names into C++ ones.

Revision 43622 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Apr 3 13:24:13 2012 UTC (2 years, 9 months ago) by couet
File length: 3861 byte(s)
Diff to previous 36493 , to selected 20882
New TMultigraph option to draw the graphs in a 3D space

Revision 36493 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Nov 3 13:01:36 2010 UTC (4 years, 2 months ago) by couet
File length: 3803 byte(s)
Diff to previous 31491 , to selected 20882
- New method IsInside() returning 1 if a (x,y) position is
  inside the polygons(s) defined by the graphs(s), 0 otherwise.

Revision 31491 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Dec 1 18:11:55 2009 UTC (5 years, 1 month ago) by moneta
File length: 3742 byte(s)
Diff to previous 31207 , to selected 20882
Merge the changes from David in the dev branch (up to rev 31490) to return the TFitResultPtr from the Fit methods of 
TGraph, TGraph2D, TMultiGraph, THnSparse

Revision 31207 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Nov 16 16:52:00 2009 UTC (5 years, 2 months ago) by moneta
File length: 3706 byte(s)
Diff to previous 25487 , to selected 20882
merge from  https://root.cern.ch/svn/root/branches/dev/mathDev/hist/hist  up to revision 31170 
from David and myself 


Summary of major changes: 

- TFitResult, TFitResultPtr

  - add new class TFitResult which extend FitResult with TNamed for the I/O. The result of the fit , including covariance and correlation matrix, minos errors, etc... can then be stored  in a file
  - add a class TFitResultPtr which behaves like a pointer to TFitResult and can be converted to an integer. This class is now returned by TH1::Fit and TGraph::Fit. By default the class contains only the returned integer status of the fit. If option "S" is used the class contains a pointer to TFitResult which can be retrieved using the -> or * operators (like a smart pointer)
The conversion to int provides backward compatibility with the old signature ( int TH1::Fit )

- TH1, TGraph, TGraph2D, TMultiGraph
  change from int Fit(....)  to TFitResultPtr Fit(.....)
  remove internal function DoFit  
  
- THnSparse

  add functionality for fitting a sparse histogram. Default method is the likelihood one. Chi2 can be used with the new option "X"

- FOption

 - add some new options for fitting: 
 
     "S" for storing the fit resul
     "X" for forcing chi2 fit in case of THnSParse
     "EX0" for neglecting errors in X when fitting TGraphErrors

- WrappedMultiTF1

 - make the wrapper for TF1 multi-dim function implementing the gradient interface 

Minos changes: 

 TH1: 
  - add check of compatibility for each bins when using Add on variable bin histograms

 TH3: 
 - fix a bug in setting the entries for a projected 2d profile when using weights
 THNSParse: 
 - set also the entries (and reset statistics) in the projected sparse histogram

 TFormula: 
 - define the number for the 2d function like xygaus or xylandau

 HFItInterface: 
  improve filling data for histograms (add support for bin volume normalization)
  add initialization for exponential and 2d gaus functions

Revision 25487 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Sep 22 12:44:13 2008 UTC (6 years, 4 months ago) by moneta
File length: 3807 byte(s)
Diff to previous 24702 , to selected 20882
Import changes from math development branch, in particular a re-implementation of 
fitting methods for the histogram and graph objects. 

NOTE: Since some files are removed, a  make clean-hist is needed in order to be able 
to compile hist after an svn update. 

 
The implementation of TH1::Fit, TGraph::Fit, TGraph2D::Fit and TMultiGraph::Fit is 
done in a common function implemented in HFitImpl.cxx (HFit::Fit). 

In addition the file HFitInterface.h define ROOT::Fit::FitObject functions passing 
option directly via Foption class and not by a string. They are used by the FitPanel.

Remove previously existing files THistFitInterface.cxx (and *.h) and 
TGraphFitInterface.cxx (and *.h). The code is now in the  HFitInterface.cxx (and *.h) 
files. 

Use plugin manager directly to open the Fit Panel. Do not pass anymore via the THistPainter. 
Changes in TH1::FitPanel, TGraph::FitPanel. 
Add FitPanel() method for TGraph2D and TMultiGraph. 

Add new class TBackCompFitter, providing a backward compatible implementation of 
TVirtualFitter using the new fitting class. It is constructed from the fitter class 
and can be used to retrieve the fit information (result and configuration) via the 
TVirtualFitter API from FitConfig and FitResult. A static istance is created after 
calling the Fit method.   
  
Other changes are:  


TGraph: 
  - when creating a graph from an histogram, don't use the same name. 
  Otherwise it will conflict later with histogram created internally by the TGraph. 

TH2: 
     add protected method TH2::DoFitSlices and TH2::DoProfile as common implementations
     for (FitSlicesX,FitSclicesY) and (ProfileX, ProfileY).
     pass the global statistics in DoProjection when range is (1,NBIN)

TBinimialEfficiencyFit: 
     add possibility to set verbose option, and set different precision and 
     max iterations for minimizing.

Revision 24702 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Jul 8 12:01:46 2008 UTC (6 years, 6 months ago) by brun
File length: 3578 byte(s)
Copied from: trunk/graf2d/graf/inc/TMultiGraph.h revision 24701
Diff to previous 23140 , to selected 20882
-Move the TGraph classes and derivatives from graf2d to hist
-The graf2d/graf has now only one dictionary instead of 2

Revision 23140 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Apr 11 11:01:39 2008 UTC (6 years, 9 months ago) by rdm
Original Path: trunk/graf2d/graf/inc/TMultiGraph.h
File length: 3578 byte(s)
Diff to previous 20882
move the following directories to "graf2d":

asimage, freetype, gpad, graf, postscript, qt, win32gdk, x11, x11ttf

move the following directories to "graf3d":

eve, ftgl, g3d, gl, x3d

Revision 20882 - (view) (download) (as text) (annotate) - [selected]
Modified Mon Nov 19 11:31:26 2007 UTC (7 years, 2 months ago) by rdm
Original Path: trunk/graf/inc/TMultiGraph.h
File length: 3578 byte(s)
Diff to previous 19826
Set property svn:eol-style LF on all source and Makefiles. This should avoid
problems with Win32 line endings ending up in the repository. All MS tools
support LF eols fine.

Revision 19826 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Sep 19 19:56:11 2007 UTC (7 years, 4 months ago) by rdm
Original Path: trunk/graf/inc/TMultiGraph.h
File length: 3578 byte(s)
Diff to previous 19825 , to selected 20882
imported svn:keywords Id property

Revision 19825 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Sep 19 19:49:10 2007 UTC (7 years, 4 months ago) by rdm
Original Path: trunk/graf/inc/TMultiGraph.h
File length: 3629 byte(s)
Diff to previous 16436 , to selected 20882
remove :$ from tag line

Revision 16436 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Oct 5 13:50:11 2006 UTC (8 years, 3 months ago) by couet
Original Path: trunk/graf/inc/TMultiGraph.h
File length: 3639 byte(s)
Diff to previous 15672 , to selected 20882
- New method: Add(TMultiGraph *multigraph, Option_t *chopt="");
  it allows to add all the graphs in "*multigraph" in the current MultiGraph.
  Example:

 {
    float x1[] = {1,2,3}; float y1[] = {4,7,6};
    float x2[] = {3,5,6}; float y2[] = {0,9,4};
    float x3[] = {7,8,9}; float y3[] = {1,2,4};
    float x4[] = {0,6,5}; float y4[] = {5,2,7};

    TGraph *gr1 = new TGraph(3,x1,y1);
    TGraph *gr2 = new TGraph(3,x2,y2);
    TGraph *gr3 = new TGraph(3,x3,y3);
    TGraph *gr4 = new TGraph(3,x4,y4);

    TMultiGraph *mg1 = new TMultiGraph();
    mg1->Add(gr1); mg1->Add(gr2);
    TMultiGraph *mg2 = new TMultiGraph();
    mg2->Add(gr3); mg2->Add(gr4);
    mg2->Add(mg1); // mg2 now contains gr1 gr2 gr3 and gr4

    mg2->Draw("AL*");
 }

Revision 15672 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Jul 3 16:10:46 2006 UTC (8 years, 6 months ago) by brun
Original Path: trunk/graf/inc/TMultiGraph.h
File length: 3568 byte(s)
Diff to previous 15134 , to selected 20882
from Axel:
Change the signature of SavePrimitive from

  void SavePrimitive(ofstream &out, Option_t *option);
to
  void SavePrimitive(ostream &out, Option_t *option = "");

With this change one can do, eg
   myhist.SavePrimitive(std::cout);

WARNING: do rm -f tree/src/*.o

Revision 15134 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue May 23 04:47:42 2006 UTC (8 years, 8 months ago) by brun
Original Path: trunk/graf/inc/TMultiGraph.h
File length: 3565 byte(s)
Diff to previous 13304 , to selected 20882
From Federico Carminati:

"I have implemented all copy and equal operators needed to silence all
warnings in AliRoot, as requested. I have implemented shallow copies as
would do the default operators synthetized by the compiler.
Most operators are protected. If users complain, you just have to move
them into the public area, but class derivation is of course supported.
It has been a terrible job, I have modified 278 files, but the changes
are backward compabile, and this goes a long way to permitting user to
use the effc++ flag with root headers."

Revision 13304 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Nov 21 13:57:42 2005 UTC (9 years, 2 months ago) by couet
Original Path: trunk/graf/inc/TMultiGraph.h
File length: 3480 byte(s)
Diff to previous 11584 , to selected 20882
- Last mods (in graf) to make the rules checker happy.

Revision 11584 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Apr 14 06:52:09 2005 UTC (9 years, 9 months ago) by brun
Original Path: trunk/graf/inc/TMultiGraph.h
File length: 3451 byte(s)
Diff to previous 11226 , to selected 20882
Add a new function
Option_t *TMultiGraph::GetGraphDrawOption(const TGraph *gr) const
// Return the draw option for the TGraph gr in this TMultiGraph
// The return option is the one specified when calling TMultiGraph::Add(gr,option).

Revision 11226 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Mar 4 09:06:37 2005 UTC (9 years, 10 months ago) by brun
Original Path: trunk/graf/inc/TMultiGraph.h
File length: 3364 byte(s)
Diff to previous 5552 , to selected 20882
From Anna Kreshuk:
- TLinearFitter class: Linear fitter is used to fit a set of data points with a linear
  combination of specified functions (with or without weights). The "linear" in the name
  stands for "linear in parameters", not variables. The main advantages,
  compared to a general non-linear fitter, is that the linear fitter is considerably
  faster and doesn't require setting the initial values of parameters.
  The linear fitter can be used directly or through TH1::Fit and TGraph::Fit functions
  When it's used directly, functions of more than 3 dimensions can be fitted.

- TFormula: a new data member fLinearParts and methods to process it are added. Now
  one can create a function of the type that can be fit by the linear fitter.
  Example: TFormula f("f", "x++sin(x)") is equivalent to
  TFormula f("f","[0]*x + [1]*sin(x)"), but if a TH1::Fit or a TGraph::Fit is performed
  with the 1st formula, it goes through the linear fitter, if it's performed with the
  2nd formula, it goes through Minuit.

- TMultiGraph class: the Fit method is implemented, allowing to fit all the graphs
  of a multigraph simultaneously

- TGraph, TGraphErrors, TGraphAsymmErrors, TGraphBentErrors - functions GetEXhigh(),
  GetEXlow(), GetEYhigh(), GetEYlow() implemented to simplify the GraphFitChisquare()
  function of the TFitter class

- TH1, TGraph, TGraph2D, TMultiGraph - changes in the Fit functions, allowing to use
  the linear fitter. Fitting with "polN" functions redirected to use the linear fitter,
  in cases where no options, except "range", are specified.

Revision 5552 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Nov 6 21:16:43 2002 UTC (12 years, 2 months ago) by brun
Original Path: trunk/graf/inc/TMultiGraph.h
File length: 2634 byte(s)
Diff to previous 4037 , to selected 20882
Implement function TMultiGraph::RecursiveRemove.
When a TGraph is deleted (eg via the context menu), its parent TMultigraph
is notified to remove the TGrapg from its list of graphs.
Destructor protected.

Revision 4037 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Feb 19 17:43:41 2002 UTC (12 years, 11 months ago) by brun
Original Path: trunk/graf/inc/TMultiGraph.h
File length: 2578 byte(s)
Diff to previous 1205 , to selected 20882
Add an optional argument to TMultiGraph::Draw.
This optional argument can be used to specify the draw option for this graph.
If a draw option is not specified, the option specified in TMultiGraph::Draw
will be used instead.

Also, always use the option "0" when painting the frame histogram.
The option "0" suppresses the drawing of the horizonthal line at y=0.

Revision 1205 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Dec 13 15:13:57 2000 UTC (14 years, 1 month ago) by brun
Original Path: trunk/graf/inc/TMultiGraph.h
File length: 2558 byte(s)
Diff to previous 754 , to selected 20882
      W A R N I N G   !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
     ==================================================================
A very long list of changes in this pre-release of version 3.00.
We have modified the signature of many functions (in particular TObject)
to introduce more constness in the system.
You must change your code if your class derives from TObject and uses
one of the modified functions such as ls, Print, Compare, Hash, etc.
The modified functions in TObject have the following signature:
   virtual TObject    *Clone() const;
   virtual Int_t       Compare(const TObject *obj) const;
   virtual void        Delete(Option_t *option=""); // *MENU*
   virtual void        DrawClass() const; // *MENU*
   virtual void        DrawClone(Option_t *option="") const; // *MENU*
   virtual void        Dump() const; // *MENU*
   virtual TObject    *FindObject(const TObject *obj) const;
   virtual char       *GetObjectInfo(Int_t px, Int_t py) const;
   virtual ULong_t     Hash() const;
   virtual void        Inspect() const; // *MENU*
   virtual Bool_t      IsEqual(const TObject *obj) const;
   virtual void        ls(Option_t *option="") const;
   virtual void        Print(Option_t *option="") const;

A similar operation has been done with classes such as TH1, TVirtualPad,
TTree, etc.

Revision 754 - (view) (download) (as text) (annotate) - [select for diffs]
Added Thu Oct 12 13:27:23 2000 UTC (14 years, 3 months ago) by brun
Original Path: trunk/graf/inc/TMultiGraph.h
File length: 2528 byte(s)
Diff to selected 20882
Add new class TMultiGraph.
//   A TMultiGraph is a collection of TGraph (or derived) objects
//   Use TMultiGraph::Add to add a new graph to the list.
//   The TMultiGraph owns the objects in the list.
//   Drawing options are the same as for TGraph
//   Example;
//     TGraph *gr1 = new TGraph(...
//     TGraphErrors *gr2 = new TGraphErrors(...
//     TMultiGraph *mg = new TMultiGraph();
//     mg->Add(gr1);
//     mg->Add(gr2);
//     mg->Draw("alp");

This form allows you to request diffs between any two revisions of this file. For each of the two "sides" of the diff, enter a numeric revision.

  Diffs between and
  Type of Diff should be a

Sort log by:

Subversion Admin
ViewVC Help
Powered by ViewVC 1.0.9