> > > > I suspect this is a simple problem. I'm just trying to Draw a simple > > 1D histogram with a log scale, and I'm having trouble getting a > > sensible default range of values on the y-axis from the Draw method. I > > also don't seem to able to set the axis range by hand with e.g. > > > > hist->GetYaxis()->SetRange(min,max); > //adchithist2->GetYaxis()->SetRange(0.01,10.); > adchithist2->SetMinimum(0.01); > adchithist2->SetMaximum(10); > adchithist2->Draw(); > adchithist2->Print("all"); OK, this works. But wouldn't it be a more sensible default behavior to have the axis range automatically set correctly for a log plot? Shouldn't the histograms know what their minimum and maximum (nonzero) values are? Is there a good reason why this doesn't work automatically? But leaving that aside for the moment, I have another log scale plot with a scaled histogram that isn't plotting correctly. The simple macro example is attached. Root 3.03/06 works but Root 3.03/08 and beyond (including the latest version from the cvs repository) just plot nothing at all, although it seems to choose a reasonable y-axis (in all cases RH Linux 7.3). It seems to matter what the value used for scaling actually is. A bug? Kate Scholberg schol@mit.edu ------------------------------------------------------------ void Scaled_hist() { TCanvas *c2 = new TCanvas("c2","TRD hit dE"); c2->SetLogy(1); c2->SetFillColor(10); gStyle->SetOptStat(0); Int_t nbin = 200; Float_t firstbin = 0.; Float_t lastbin = 200.; TH1F *detrd = new TH1F("detrd","dE from TRD",nbin,firstbin,lastbin); Float_t sum=0.; for(int i=0;i<1000;i++){ sum = Float_t(gRandom->Gaus(0,20)); detrd->Fill(sum); } detrd->Scale(1./50.); detrd->SetMarkerColor(2); detrd->SetMarkerStyle(22); detrd->Draw("p"); }
This archive was generated by hypermail 2b29 : Sat Jan 04 2003 - 23:51:16 MET