CMS 3D CMS Logo

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

Public Member Functions

def __init__ (self, x, y, text, size=None, bold=True, align="left", color=ROOT.kBlack, font=None)
 
def Draw (self, options=None)
 

Private Attributes

 _l
 
 _text
 
 _x
 
 _y
 

Detailed Description

Abstraction on top of TLatex

Definition at line 1533 of file plotting.py.

Constructor & Destructor Documentation

◆ __init__()

def plotting.PlotText.__init__ (   self,
  x,
  y,
  text,
  size = None,
  bold = True,
  align = "left",
  color = ROOT.kBlack,
  font = None 
)
Constructor.

Arguments:
x     -- X coordinate of the text (in NDC)
y     -- Y coordinate of the text (in NDC)
text  -- String to draw
size  -- Size of text (None for the default value, taken from gStyle)
bold  -- Should the text be bold?
align -- Alignment of text (left, center, right)
color -- Color of the text
font  -- Specify font explicitly

Definition at line 1535 of file plotting.py.

1535  def __init__(self, x, y, text, size=None, bold=True, align="left", color=ROOT.kBlack, font=None):
1536  """Constructor.
1537 
1538  Arguments:
1539  x -- X coordinate of the text (in NDC)
1540  y -- Y coordinate of the text (in NDC)
1541  text -- String to draw
1542  size -- Size of text (None for the default value, taken from gStyle)
1543  bold -- Should the text be bold?
1544  align -- Alignment of text (left, center, right)
1545  color -- Color of the text
1546  font -- Specify font explicitly
1547  """
1548  self._x = x
1549  self._y = y
1550  self._text = text
1551 
1552  self._l = ROOT.TLatex()
1553  self._l.SetNDC()
1554  if not bold:
1555  self._l.SetTextFont(self._l.GetTextFont()-20) # bold -> normal
1556  if font is not None:
1557  self._l.SetTextFont(font)
1558  if size is not None:
1559  self._l.SetTextSize(size)
1560  if isinstance(align, str):
1561  if align.lower() == "left":
1562  self._l.SetTextAlign(11)
1563  elif align.lower() == "center":
1564  self._l.SetTextAlign(21)
1565  elif align.lower() == "right":
1566  self._l.SetTextAlign(31)
1567  else:
1568  raise Exception("Error: Invalid option '%s' for text alignment! Options are: 'left', 'center', 'right'."%align)
1569  else:
1570  self._l.SetTextAlign(align)
1571  self._l.SetTextColor(color)
1572 

Member Function Documentation

◆ Draw()

def plotting.PlotText.Draw (   self,
  options = None 
)
Draw the text to the current TPad.

Arguments:
options -- For interface compatibility, ignored

Provides interface compatible with ROOT's drawable objects.

Definition at line 1573 of file plotting.py.

1573  def Draw(self, options=None):
1574  """Draw the text to the current TPad.
1575 
1576  Arguments:
1577  options -- For interface compatibility, ignored
1578 
1579  Provides interface compatible with ROOT's drawable objects.
1580  """
1581  self._l.DrawLatex(self._x, self._y, self._text)
1582 
1583 

References plotting.PlotText._l, plotting.PlotText._text, PGeometricDet::Item._x, SpecificationBuilder_cfi.Specification._x, hitfit::Fourvec_Event._x, plotting.PlotText._x, PGeometricDet::Item._y, contrib::CMSBoostedTauSeedingAlgorithmStructure._y, SpecificationBuilder_cfi.Specification._y, and plotting.PlotText._y.

Member Data Documentation

◆ _l

plotting.PlotText._l
private

Definition at line 1552 of file plotting.py.

Referenced by plotting.PlotText.Draw().

◆ _text

plotting.PlotText._text
private

Definition at line 1550 of file plotting.py.

Referenced by plotting.PlotText.Draw().

◆ _x

plotting.PlotText._x
private

Definition at line 1548 of file plotting.py.

Referenced by plotting.PlotText.Draw().

◆ _y

plotting.PlotText._y
private

Definition at line 1549 of file plotting.py.

Referenced by plotting.PlotText.Draw().

Exception