You should not draw the TGraph and the TMultiGraph, but only the TMultiGraph.
See an example how to show the fit box for both graphs in the attachement.
Please specify a subject to your mails.
see: http://root.cern.ch/root/roottalk/RoottalkRules.html
Rene Brun
Venkatesh Kaushik wrote:
>
> Hi ROOTers,
> I have a couple of graphs that i draw on the same canvas using TMultigraph
> option, why do i see the X-axis labes and the Y-axis labels for both the
> graphs overlap, even the stats overlap. am i doing something wrong?
>
> Constrain = 1;
> TCanvas *c=new TCanvas("c","Mokka GEM Response Curve",0,27,1212,771);
> ...
> ... .....
>
> // First graph with a fit
>
> TGraph *grE=new TGraphErrors(6,E,E_Mean,errE,Err);
> grE->Draw("AP");
> grE->Fit("pol1");
> TF1 *myFuncE=grE->GetFunction("pol1");
> if(Constrain)myFuncE->SetParameter(0,0);
> Double_t slopeE_Mean=myFuncE->GetParameter(1);
> grE->SetLineColor(kRed);
>
> // Second graph with a fit
>
> TGraph *grH=new TGraphErrors(6,E,H_Mean,errH,HErr);
> grH->Draw("AP");
> grH->Fit("pol1");
> TF1 *myFuncH=grH->GetFunction("pol1");
> if(Constrain)myFuncH->SetParameter(0,0);
> Double_t slopeH_Mean=myFuncH->GetParameter(1);
> grH->SetLineColor(kBlue);
>
> TMultiGraph *mg = new TMultiGraph();
> mg->Add(grE);
> mg->Add(grH);
> mg->Draw("AP");
>
> ..
> ..
> I would appreciate any help in this regard.
> Thank you.
> Venkat.
> ----------------------------------------------------------
{
gROOT->Reset();
gStyle->SetOptFit();
c1 = new TCanvas("c1","gerrors2",200,10,700,500);
c1->SetGrid();
// draw a frame to define the range
TMultiGraph *mg = new TMultiGraph();
// create first graph
Int_t n1 = 10;
Double_t x1[] = {-0.1, 0.05, 0.25, 0.35, 0.5, 0.61,0.7,0.85,0.89,0.95};
Double_t y1[] = {-1,2.9,5.6,7.4,9,9.6,8.7,6.3,4.5,1};
Double_t ex1[] = {.05,.1,.07,.07,.04,.05,.06,.07,.08,.05};
Double_t ey1[] = {.8,.7,.6,.5,.4,.4,.5,.6,.7,.8};
gr1 = new TGraphErrors(n1,x1,y1,ex1,ey1);
gr1->SetMarkerColor(kBlue);
gr1->SetMarkerStyle(21);
gr1->Fit("pol6","q");
mg->Add(gr1);
// create second graph
Int_t n2 = 10;
Float_t x2[] = {-0.28, 0.005, 0.19, 0.29, 0.45, 0.56,0.65,0.80,0.90,1.01};
Float_t y2[] = {2.1,3.86,7,9,10,10.55,9.64,7.26,5.42,2};
Float_t ex2[] = {.04,.12,.08,.06,.05,.04,.07,.06,.08,.04};
Float_t ey2[] = {.6,.8,.7,.4,.3,.3,.4,.5,.6,.7};
gr2 = new TGraphErrors(n2,x2,y2,ex2,ey2);
gr2->SetMarkerColor(kRed);
gr2->SetMarkerStyle(20);
gr2->Fit("pol5","q");
mg->Add(gr2);
mg->Draw("ap");
//force drawing of canvas to generate the fit TPaveStats
c1->Update();
TPaveStats *stats1 = (TPaveStats*)gr1->GetListOfFunctions()->FindObject("stats");
TPaveStats *stats2 = (TPaveStats*)gr2->GetListOfFunctions()->FindObject("stats");
stats1->SetTextColor(kBlue);
stats2->SetTextColor(kRed);
stats1->SetX1NDC(0.12); stats1->SetX2NDC(0.32); stats1->SetY1NDC(0.75);
stats2->SetX1NDC(0.72); stats2->SetX2NDC(0.92); stats2->SetY1NDC(0.78);
c1->Modified();
}
This archive was generated by hypermail 2b29 : Thu Jan 01 2004 - 17:50:15 MET