CMS 3D CMS Logo

List of all members | Public Member Functions | Private Attributes
plotting.CutEfficiency Class Reference

Public Member Functions

def __init__ (self, name, histo, title="")
 
def __str__ (self)
 
def create (self, tdirectory)
 

Private Attributes

 _histo
 
 _name
 
 _title
 

Detailed Description

Class for making a cut efficiency histograms.

      N after cut
eff = -----------
        N total

Definition at line 899 of file plotting.py.

Constructor & Destructor Documentation

◆ __init__()

def plotting.CutEfficiency.__init__ (   self,
  name,
  histo,
  title = "" 
)
Constructor

Arguments:
name  -- String for name of the resulting histogram
histo -- String for a source histogram (needs to be cumulative)

Definition at line 906 of file plotting.py.

906  def __init__(self, name, histo, title=""):
907  """Constructor
908 
909  Arguments:
910  name -- String for name of the resulting histogram
911  histo -- String for a source histogram (needs to be cumulative)
912  """
913  self._name = name
914  self._histo = histo
915  self._title = title
916 

Member Function Documentation

◆ __str__()

def plotting.CutEfficiency.__str__ (   self)

◆ create()

def plotting.CutEfficiency.create (   self,
  tdirectory 
)
Create and return the cut efficiency histogram from a TDirectory

Definition at line 921 of file plotting.py.

921  def create(self, tdirectory):
922  """Create and return the cut efficiency histogram from a TDirectory"""
923  histo = _getOrCreateObject(tdirectory, self._histo)
924  if not histo:
925  return None
926 
927  # infer cumulative direction from the under/overflow bins
928  ascending = histo.GetBinContent(0) < histo.GetBinContent(histo.GetNbinsX())
929  if ascending:
930  n_tot = histo.GetBinContent(histo.GetNbinsX())
931  else:
932  n_tot = histo.GetBinContent(0)
933 
934  if n_tot == 0:
935  return histo
936 
937  ret = histo.Clone(self._name)
938  ret.SetTitle(self._title)
939 
940  # calculate efficiency
941  for i in range(1, histo.GetNbinsX()+1):
942  n = histo.GetBinContent(i)
943  val = n/n_tot
944  errVal = math.sqrt(val*(1-val)/n_tot)
945  ret.SetBinContent(i, val)
946  ret.SetBinError(i, errVal)
947  return ret
948 

References plotting._getOrCreateObject(), plotting.Transform._histo, plotting.CutEfficiency._histo, FP420HitsObject._name, TrackerHitsObject._name, PGeometricDet::Item._name, TrackingRecHitAlgorithm._name, Logger._name, hcaldqm::DQModule._name, citk::IsolationConeDefinitionBase._name, DrellYanValidation._name, WValidation._name, hcaldqm::flag::Flag._name, hcaldqm::quantity::Quantity._name, HistoParams< T >._name, CutApplicatorBase._name, HistoParams< TH2F >._name, HistoParams< TProfile2D >._name, SequenceTypes.SequencePlaceholder._name, plotting.Subtract._name, plotting.Transform._name, plotting.FakeDuplicate._name, plotting.CutEfficiency._name, SequenceTypes.TaskPlaceholder._name, HistoParams< T >._title, HistoParams< TH2F >._title, SiStripHitEffFromCalibTree._title, HistoParams< TProfile2D >._title, html.PageSet._title, plotting.Subtract._title, html.HtmlReport._title, plotting.Transform._title, plotting.FakeDuplicate._title, plotting.CutEfficiency._title, and FastTimerService_cff.range.

Member Data Documentation

◆ _histo

plotting.CutEfficiency._histo
private

Definition at line 914 of file plotting.py.

Referenced by plotting.CutEfficiency.create().

◆ _name

plotting.CutEfficiency._name
private

◆ _title

plotting.CutEfficiency._title
private

Definition at line 915 of file plotting.py.

Referenced by plotting.CutEfficiency.create(), and plotting.Plot.create().

FastTimerService_cff.range
range
Definition: FastTimerService_cff.py:34
beamerCreator.create
def create(alignables, pedeDump, additionalData, outputFile, config)
Definition: beamerCreator.py:44
TriggerAnalyzer.__str__
def __str__(self)
Definition: TriggerAnalyzer.py:103
plotting._getOrCreateObject
def _getOrCreateObject(tdirectory, nameOrCreator)
Definition: plotting.py:58