CMS 3D CMS Logo

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

Public Member Functions

def __init__ (self, xmin, ymin, xmax, ymax, lineheight=0.04, fillColor=ROOT.kWhite, transparent=True, kwargs)
 
def addText (self, text)
 
def Draw (self, options="")
 
def move (self, dx=0, dy=0, dw=0, dh=0)
 
def width (self)
 

Private Attributes

 _currenty
 
 _fillColor
 
 _lineheight
 
 _pave
 
 _textArgs
 
 _texts
 
 _transparent
 
 _xmax
 
 _xmin
 
 _ymax
 
 _ymin
 

Detailed Description

Class for drawing text and a background box.

Definition at line 1579 of file plotting.py.

Constructor & Destructor Documentation

def plotting.PlotTextBox.__init__ (   self,
  xmin,
  ymin,
  xmax,
  ymax,
  lineheight = 0.04,
  fillColor = ROOT.kWhite,
  transparent = True,
  kwargs 
)
Constructor

Arguments:
xmin        -- X min coordinate of the box (NDC)
ymin        -- Y min coordinate of the box (NDC) (if None, deduced automatically)
xmax        -- X max coordinate of the box (NDC)
ymax        -- Y max coordinate of the box (NDC)
lineheight  -- Line height
fillColor   -- Fill color of the box
transparent -- Should the box be transparent? (in practive the TPave is not created)

Keyword arguments are forwarded to constructor of PlotText

Definition at line 1581 of file plotting.py.

1581  def __init__(self, xmin, ymin, xmax, ymax, lineheight=0.04, fillColor=ROOT.kWhite, transparent=True, **kwargs):
1582  """Constructor
1583 
1584  Arguments:
1585  xmin -- X min coordinate of the box (NDC)
1586  ymin -- Y min coordinate of the box (NDC) (if None, deduced automatically)
1587  xmax -- X max coordinate of the box (NDC)
1588  ymax -- Y max coordinate of the box (NDC)
1589  lineheight -- Line height
1590  fillColor -- Fill color of the box
1591  transparent -- Should the box be transparent? (in practive the TPave is not created)
1592 
1593  Keyword arguments are forwarded to constructor of PlotText
1594  """
1595  # ROOT.TPave Set/GetX1NDC() etc don't seem to work as expected.
1596  self._xmin = xmin
1597  self._xmax = xmax
1598  self._ymin = ymin
1599  self._ymax = ymax
1600  self._lineheight = lineheight
1601  self._fillColor = fillColor
1602  self._transparent = transparent
1603  self._texts = []
1604  self._textArgs = {}
1605  self._textArgs.update(kwargs)
1606 
1607  self._currenty = ymax
1608 
def __init__(self, xmin, ymin, xmax, ymax, lineheight=0.04, fillColor=ROOT.kWhite, transparent=True, kwargs)
Definition: plotting.py:1581

Member Function Documentation

def plotting.PlotTextBox.addText (   self,
  text 
)
Add text to current position

Definition at line 1609 of file plotting.py.

References plotting.PlotTextBox._currenty, plotting.PlotTextBox._lineheight, plotting.PlotTextBox._textArgs, MEGeom._xmin, HistoParams< T >._xmin, HistoParams< TH2F >._xmin, HistoParams< TProfile2D >._xmin, and plotting.PlotTextBox._xmin.

1609  def addText(self, text):
1610  """Add text to current position"""
1611  self._currenty -= self._lineheight
1612  self._texts.append(PlotText(self._xmin+0.01, self._currenty, text, **self._textArgs))
1613 
def addText(self, text)
Definition: plotting.py:1609
def plotting.PlotTextBox.Draw (   self,
  options = "" 
)
Draw the box and the text to the current TPad.

Arguments:
options -- Forwarded to ROOT.TPave.Draw(), and the Draw() of the contained objects

Definition at line 1643 of file plotting.py.

References plotting.PlotTextBox._transparent, fftjetcms::LookupTable2d.ymin(), PixelClusterizerBase::AccretionCluster.ymin, Exhume::Event.ymin, cscdqm::AddressBox.ymin, and TrackerMap.ymin.

1643  def Draw(self, options=""):
1644  """Draw the box and the text to the current TPad.
1645 
1646  Arguments:
1647  options -- Forwarded to ROOT.TPave.Draw(), and the Draw() of the contained objects
1648  """
1649  if not self._transparent:
1650  ymin = self.ymin
1651  if ymin is None:
1652  ymin = self.currenty - 0.01
1653  self._pave = ROOT.TPave(self.xmin, self.ymin, self.xmax, self.ymax, 0, "NDC")
1654  self._pave.SetFillColor(self.fillColor)
1655  self._pave.Draw(options)
1656  for t in self._texts:
1657  t.Draw(options)
1658 
def Draw(self, options="")
Definition: plotting.py:1643
def plotting.PlotTextBox.move (   self,
  dx = 0,
  dy = 0,
  dw = 0,
  dh = 0 
)
Move the box and the contained text objects

Arguments:
dx -- Movement in x (positive is to right)
dy -- Movement in y (positive is to up)
dw -- Increment of width (negative to decrease width)
dh -- Increment of height (negative to decrease height)

dx and dy affect to both box and text objects, dw and dh
affect the box only.

Definition at line 1617 of file plotting.py.

References plotting.PlotTextBox._texts, MEGeom._xmax, HistoParams< T >._xmax, HistoParams< TH2F >._xmax, HistoParams< TProfile2D >._xmax, plotting.PlotTextBox._xmax, MEGeom._xmin, HistoParams< T >._xmin, HistoParams< TH2F >._xmin, HistoParams< TProfile2D >._xmin, plotting.PlotTextBox._xmin, MEGeom._ymax, HistoParams< T >._ymax, HistoParams< TH2F >._ymax, HistoParams< TProfile2D >._ymax, plotting.PlotTextBox._ymax, MEGeom._ymin, HistoParams< T >._ymin, HistoParams< TH2F >._ymin, HistoParams< TProfile2D >._ymin, and plotting.PlotTextBox._ymin.

Referenced by Vispa.Gui.PortConnection.PointToPointConnection.updateConnection().

1617  def move(self, dx=0, dy=0, dw=0, dh=0):
1618  """Move the box and the contained text objects
1619 
1620  Arguments:
1621  dx -- Movement in x (positive is to right)
1622  dy -- Movement in y (positive is to up)
1623  dw -- Increment of width (negative to decrease width)
1624  dh -- Increment of height (negative to decrease height)
1625 
1626  dx and dy affect to both box and text objects, dw and dh
1627  affect the box only.
1628  """
1629  self._xmin += dx
1630  self._xmax += dx
1631  if self._ymin is not None:
1632  self._ymin += dy
1633  self._ymax += dy
1634 
1635  self._xmax += dw
1636  if self._ymin is not None:
1637  self._ymin -= dh
1638 
1639  for t in self._texts:
1640  t._x += dx
1641  t._y += dy
1642 
def move(self, dx=0, dy=0, dw=0, dh=0)
Definition: plotting.py:1617
def plotting.PlotTextBox.width (   self)

Member Data Documentation

plotting.PlotTextBox._currenty
private

Definition at line 1607 of file plotting.py.

Referenced by plotting.PlotTextBox.addText().

plotting.PlotTextBox._fillColor
private

Definition at line 1601 of file plotting.py.

plotting.PlotTextBox._lineheight
private

Definition at line 1600 of file plotting.py.

Referenced by plotting.PlotTextBox.addText().

plotting.PlotTextBox._pave
private

Definition at line 1653 of file plotting.py.

plotting.PlotTextBox._textArgs
private

Definition at line 1604 of file plotting.py.

Referenced by plotting.PlotTextBox.addText().

plotting.PlotTextBox._texts
private

Definition at line 1603 of file plotting.py.

Referenced by plotting.PlotTextBox.move().

plotting.PlotTextBox._transparent
private

Definition at line 1602 of file plotting.py.

Referenced by plotting.PlotTextBox.Draw().

plotting.PlotTextBox._xmax
private

Definition at line 1597 of file plotting.py.

Referenced by plotting.PlotTextBox.move(), and plotting.PlotTextBox.width().

plotting.PlotTextBox._xmin
private
plotting.PlotTextBox._ymax
private

Definition at line 1599 of file plotting.py.

Referenced by plotting.PlotTextBox.move().

plotting.PlotTextBox._ymin
private

Definition at line 1598 of file plotting.py.

Referenced by plotting.PlotTextBox.move().