Hi Maurizio, The X,Y axis objects do not exist before calling TGraph::Draw. See your modified code to set the range for TGraphs. Rene Brun { const Int_t n1=12; Double_t x1[n1]; const Double_t y1[n1] = { 18.606, 26.434, 32.393, 37.443, 41.799, 45.858, 49.540, 52.971, 56.183, 59.204, 62.078, 64.832 }; for (Int_t i = 0; i < n1; ++i) x1[i]=sqrt(i+1); TCanvas *c1 = new TCanvas("c1", "c1"); c1->SetFillColor(0); c1->DrawFrame(0,10,4,70); TGraph *g1 = new TGraph(n1, x1, y1); g1->SetMarkerStyle(2); g1->SetMarkerSize(0.9); g1->Draw("P"); } Maurizio Loreti wrote: > > Hi there - > I am trying to make a slide with some data. The file I am using with root > (version 3.02.07, linux distribution 6.1/egcs) is: > > { > const Int_t n1=12; > Double_t x1[n1]; > const Double_t y1[n1] = { > 18.606, 26.434, 32.393, 37.443, 41.799, 45.858, > 49.540, 52.971, 56.183, 59.204, 62.078, 64.832 > }; > > for (Int_t i = 0; i < n1; ++i) x1[i]=sqrt(i+1); > > TCanvas *c1 = new TCanvas("c1", "c1"); > c1->SetFillColor(0); > > TGraph *g1 = new TGraph(n1, x1, y1); > g1->SetMarkerStyle(2); > g1->SetMarkerSize(0.9); > // g1->GetXaxis()->SetLimits(0.0, 4.0); > // g1->GetYaxis()->SetLimits(10.0, 70.0); > g1->Draw("AP"); > } > > So far, so good. ".x foo.C" does what it is supposed to do. But - if I > try to define the X- and Y-axis limits to some integer/meaningful number > in the two commented lines, I get "*** Break *** segmentation violation". > > What am I doing wrong? x->GetXaxis()->SetLimits() works correctly if x > points to an histogram. What is the way to change the axis limits for > graphs? > > TIA, M. > > -- > Maurizio Loreti http://www.pd.infn.it/~loreti/mlo.html > Univ. of Padova, Dept. of Physics - Padova, Italy loreti@pd.infn.it
This archive was generated by hypermail 2b29 : Sat Jan 04 2003 - 23:50:45 MET