User Tools

Site Tools


root:setaxisrange

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revisionBoth sides next revision
root:setaxisrange [2010/11/09 16:08] – created nchiaproot:setaxisrange [2011/05/11 15:35] – added solution for my latest problem nchiap
Line 1: Line 1:
 ====== Set Display Range of Axis ====== ====== Set Display Range of Axis ======
 +The normal way to change the display range of an axis is:
 <code C++> <code C++>
 histogram->GetYaxis()->SetRangeUser(lower,upper); histogram->GetYaxis()->SetRangeUser(lower,upper);
 +</code>
 +
 +but there are several situations where this fails. See below for help in these cases.
 +
 +===== Y Axis of a normalized Histogram =====
 +Assume you have a histogram which has been normalized it with **hist->SetNormFactor(1)**.
 +When your Y-axis will show values between 0 and 1. 
 +Trying to set the Y range using these values, eg. **SetRangeUser(0.01, 0.2)**, will fail however.
 +You still need to give the range in the original unnormalized units.
 +
 +You can scale normalized units back with:
 +<code C++>
 +Double_t scaleY = hist->GetEntries()/hist->GetNormFactor();
 +hist->GetYaxis()->SetRangeUser(normalizedLower*scaleY,normalizedUppe*scaleY);
 </code> </code>
  
root/setaxisrange.txt · Last modified: 2014/03/11 10:20 by nchiap