Can you try this one: { TH2F *h = new TH2F("h","test contours",60,-3,3,60,-3,3); for (Int_t i=0;i<100000;i++) { double x,y; gRandom->Rannor(x,y); h->Fill(x,y); } h->SetMinimum(0.99); Double_t max = h->GetMaximum(); double contours[3]; contours[0] = 0.1*max; contours[1] = 0.2*max; contours[2] = 0.7*max; h->SetContour(3,contours); h->Draw("cont1"); } it should produce 3 non equidistant contours. At least it does on my Linux RedHat PC using root 3.05/05 Cheers, O.Couet On Wed, 18 Jun 2003, Matthieu Lechowski wrote: > Hello, > > I do not succeed specifying my own levels of contour for 2D histograms. > > In a ROOT script (I load a program .c then I call a function), I do: > TH2F* contour=new TH2F("contour","contour",nbinsX,xbins,nbinsY,ybins); > //...filling "contour" > Double_t levels[17]; > levels[0]=1.864 > levels[1]=5. > //...filling "levels" non-equidistant > contour->SetContour(17,levels); // <<----- ###### > // NB: definition of this function in TH1 class > contour->Draw("cont1"); > > My plot has 17 levels, OK, but they are equidistant ! > > When I want be sure that ROOT has understood "levels", I do (in my > function too): > Double_t levels2[50]; > int ncontours=contour->GetContour(levels2); > for(int i=0;i<ncontours;++i) > cout<<levels2[i]<<endl; > and I have exactly the same values that "levels", so it seems OK. > > The funny thing is that, after having done all that in the function, I > redo in interactive the check with "levels2", and I have not the > values of "levels", but the values of 17 equidistant levels (so as it > is drawn)! > > So what happens ?? > Have anybody an idea? > (I hope that I gave a not too dark explanation) > Thank you. > > Matthieu Lechowski. > > PS: I'm using ROOT on lxplus at cern, with environment: > export ROOTSYS=/afs/cern.ch/sw/root/v3.04.02/rh72_gcc2953/root; > export PATH=$ROOTSYS/bin:$PATH; > export LD_LIBRARY_PATH=$ROOTSYS/lib:$LD_LIBRARY_PATH > > -- Org: CERN - European Laboratory for Particle Physics. Mail: 1211 Geneve 23 - Switzerland Mailbox: J25910 E-Mail: Olivier.Couet@cern.ch Phone: +41 22 7676522 WWW: http://cern.ch/Olivier.Couet/ Fax: +41 22 7677155
This archive was generated by hypermail 2b29 : Thu Jan 01 2004 - 17:50:12 MET