Hi rooters,
I'm trying to do something like :
fCanvas->SetLogy(1);
for(i=0;i<dim;i++)
{
tgraph->SetPoint(i,x[i],fabs(log10(y[i])));
tgraph->SetPointError(i,0,fabs(log10(sqrt(y[i]))));
}
fCanvas->DrawFrame(rxmin, // xmin
log10(rymin), // ymin
rxmax, // xmax
log10(rymax) // ymax
);
for( unsigned int i=0;i<nmax;i++ )
{
dist = fLDF[i][0];
sig = fLDF[i][1];
tgraphLDF0->SetPoint(i,dist,log10(sig));
}
tgraph->GetXaxis()->SetTitle("Distance to axis (m)");
tgraph->GetYaxis()->SetTitle("Tank signal (VEM)");
tgraph->Draw("P");
tgraphLDF0->Draw("L");
fText.SetTextSize(0.04);
fText.SetTextAlign(22);
fText.SetNDC(kFalse);
for( int i=0;i<dim;i++ )
{
fText.DrawText(x[i],log10(log10(1.5*y[i])),"toto");
}
fCanvas->Update();
sprintf(name,"signal_%d",fSdEvent->fEventNumber);
if( fIsBatch ) SaveCanvas(name,BATCH);
else SaveCanvas(name,DEFAULT);
fCanvas->SetLogy(0); // reset to linear scale
this code works well in the sense I get what I wanted but I'm very
surprised to have to use log10(log10(...)) for the text to be correctly
displayed...
fText.DrawText(x[i],log10(log10(1.5*y[i])),"toto");
Maybe I'm doing something wrong in the principle from the beginning ???
This archive was generated by hypermail 2b29 : Thu Jan 01 2004 - 17:50:13 MET