CMS 3D CMS Logo

List of all members | Public Member Functions | Public Attributes | Static Public Attributes
svgfig.Axes Class Reference

Public Member Functions

def __init__ (self, xmin, xmax, ymin, ymax, atx=0, aty=0, xticks=-10, xminiticks=True, xlabels=True, xlogbase=None, yticks=-10, yminiticks=True, ylabels=True, ylogbase=None, arrows=None, text_attr={}, **attr)
 
def __repr__ (self)
 
def SVG (self, trans=None)
 

Public Attributes

 arrows
 
 attr
 
 aty
 
 text_attr
 
 xlogbase
 
 xmax
 
 ylogbase
 
 ymax
 

Static Public Attributes

dictionary defaults = {"stroke-width":"0.25pt"}
 
dictionary text_defaults = {"stroke":"none", "fill":"black", "font-size":5}
 

Detailed Description

Draw a pair of intersecting x-y axes.

Axes(xmin, xmax, ymin, ymax, atx, aty, xticks, xminiticks, xlabels, xlogbase,
yticks, yminiticks, ylabels, ylogbase, arrows, text_attr, attribute=value)

xmin, xmax               required       the x range
ymin, ymax               required       the y range
atx, aty                 default=0, 0   point where the axes try to cross;
                                        if outside the range, the axes will
                                        cross at the closest corner
xticks                   default=-10    request ticks according to the standard
                                        tick specification (see help(Ticks))
xminiticks               default=True   request miniticks according to the
                                        standard minitick specification
xlabels                  True           request tick labels according to the
                                        standard tick label specification
xlogbase                 default=None   if a number, the x axis is logarithmic
                                        with ticks at the given base (usually 10)
yticks                   default=-10    request ticks according to the standard
                                        tick specification
yminiticks               default=True   request miniticks according to the
                                        standard minitick specification
ylabels                  True           request tick labels according to the
                                        standard tick label specification
ylogbase                 default=None   if a number, the y axis is logarithmic
                                        with ticks at the given base (usually 10)
arrows                   default=None   if a new string identifier, draw arrows
                                        referenced by that identifier
text_attr                default={}     SVG attributes for the text labels
attribute=value pairs    keyword list   SVG attributes for all lines

Definition at line 3041 of file svgfig.py.

Constructor & Destructor Documentation

◆ __init__()

def svgfig.Axes.__init__ (   self,
  xmin,
  xmax,
  ymin,
  ymax,
  atx = 0,
  aty = 0,
  xticks = -10,
  xminiticks = True,
  xlabels = True,
  xlogbase = None,
  yticks = -10,
  yminiticks = True,
  ylabels = True,
  ylogbase = None,
  arrows = None,
  text_attr = {},
**  attr 
)

Definition at line 3079 of file svgfig.py.

3079  def __init__(self, xmin, xmax, ymin, ymax, atx=0, aty=0, xticks=-10, xminiticks=True, xlabels=True, xlogbase=None, yticks=-10, yminiticks=True, ylabels=True, ylogbase=None, arrows=None, text_attr={}, **attr):
3080  self.xmin, self.xmax = xmin, xmax
3081  self.ymin, self.ymax = ymin, ymax
3082  self.atx, self.aty = atx, aty
3083  self.xticks, self.xminiticks, self.xlabels, self.xlogbase = xticks, xminiticks, xlabels, xlogbase
3084  self.yticks, self.yminiticks, self.ylabels, self.ylogbase = yticks, yminiticks, ylabels, ylogbase
3085  self.arrows = arrows
3086 
3087  self.text_attr = dict(self.text_defaults)
3088  self.text_attr.update(text_attr)
3089 
3090  self.attr = dict(self.defaults)
3091  self.attr.update(attr)
3092 

Member Function Documentation

◆ __repr__()

def svgfig.Axes.__repr__ (   self)

Definition at line 3076 of file svgfig.py.

3076  def __repr__(self):
3077  return "<Axes x=(%g, %g) y=(%g, %g) at (%g, %g) %s>" % (self.xmin, self.xmax, self.ymin, self.ymax, self.atx, self.aty, self.attr)
3078 

References svgfig.SVG.attr, svgfig.Path.attr, svgfig.Curve.attr, svgfig.Poly.attr, svgfig.Text.attr, svgfig.TextGlobal.attr, svgfig.Dots.attr, svgfig.Line.attr, svgfig.LineGlobal.attr, svgfig.VLine.attr, svgfig.HLine.attr, svgfig.Rect.attr, svgfig.Ellipse.attr, svgfig.Ticks.attr, svgfig.Axes.attr, svgfig.Plot.atx, svgfig.YAxis.atx, svgfig.Plot.aty, svgfig.XAxis.aty, svgfig.Axes.aty, svgfig.Axes.xmax, fftjetcms::LookupTable2d.xmin(), TriggerDQMBase::MEbinning.xmin, AbsHcalFunctor.xmin(), MEbinning.xmin, PixelClusterizerBase::AccretionCluster.xmin, HcalLinearCompositionFunctor.xmin(), MEPSet.xmin, HcalCubicInterpolator.xmin(), HcalChebyshevFunctor.xmin(), HcalInterpolatedTableFunctor.xmin(), HcalPolynomialFunctor.xmin(), BremsstrahlungSimulator.xmin, ClusterizingHistogram.xmin, HcalPiecewiseLinearFunctor.xmin(), MTDClusterizerBase::AccretionCluster.xmin, SummationStep.xmin, MuonBremsstrahlungSimulator.xmin, GammaFunctionGenerator.xmin, BaseNumericalRandomGenerator.xmin, fftjetcms::LinInterpolatedTable1D.xmin(), dqmoffline::l1t::HistDefinition.xmin, cscdqm::AddressBox.xmin, HLTObjectsMonitor::MEbinning.xmin, TrackerMap.xmin, svgfig.Plot.ymax, svgfig.Frame.ymax, svgfig.Axes.ymax, fftjetcms::LookupTable2d.ymin(), PixelClusterizerBase::AccretionCluster.ymin, MTDClusterizerBase::AccretionCluster.ymin, dqmoffline::l1t::HistDefinition.ymin, Exhume::Event.ymin, cscdqm::AddressBox.ymin, and TrackerMap.ymin.

Referenced by data_sources.json_file.__str__().

◆ SVG()

def svgfig.Axes.SVG (   self,
  trans = None 
)
Apply the transformation "trans" and return an SVG object.

Definition at line 3093 of file svgfig.py.

3093  def SVG(self, trans=None):
3094  """Apply the transformation "trans" and return an SVG object."""
3095  atx, aty = self.atx, self.aty
3096  if atx < self.xmin: atx = self.xmin
3097  if atx > self.xmax: atx = self.xmax
3098  if aty < self.ymin: aty = self.ymin
3099  if aty > self.ymax: aty = self.ymax
3100 
3101  xmargin = 0.1 * abs(self.ymin - self.ymax)
3102  xexclude = atx - xmargin, atx + xmargin
3103 
3104  ymargin = 0.1 * abs(self.xmin - self.xmax)
3105  yexclude = aty - ymargin, aty + ymargin
3106 
3107  if self.arrows != None and self.arrows != False:
3108  xarrow_start = self.arrows + ".xstart"
3109  xarrow_end = self.arrows + ".xend"
3110  yarrow_start = self.arrows + ".ystart"
3111  yarrow_end = self.arrows + ".yend"
3112  else:
3113  xarrow_start = xarrow_end = yarrow_start = yarrow_end = None
3114 
3115  xaxis = XAxis(self.xmin, self.xmax, aty, self.xticks, self.xminiticks, self.xlabels, self.xlogbase, xarrow_start, xarrow_end, exclude=xexclude, text_attr=self.text_attr, **self.attr).SVG(trans)
3116  yaxis = YAxis(self.ymin, self.ymax, atx, self.yticks, self.yminiticks, self.ylabels, self.ylogbase, yarrow_start, yarrow_end, exclude=yexclude, text_attr=self.text_attr, **self.attr).SVG(trans)
3117  return SVG("g", *(xaxis.sub + yaxis.sub))
3118 

References funct.abs(), svgfig.Plot.arrows, svgfig.Axes.arrows, svgfig.SVG.attr, svgfig.Path.attr, svgfig.Curve.attr, svgfig.Poly.attr, svgfig.Text.attr, svgfig.TextGlobal.attr, svgfig.Dots.attr, svgfig.Line.attr, svgfig.LineGlobal.attr, svgfig.VLine.attr, svgfig.HLine.attr, svgfig.Rect.attr, svgfig.Ellipse.attr, svgfig.Ticks.attr, svgfig.Axes.attr, svgfig.Plot.atx, svgfig.YAxis.atx, svgfig.Plot.aty, svgfig.XAxis.aty, svgfig.Axes.aty, svgfig.Plot.text_attr, svgfig.Frame.text_attr, svgfig.Ticks.text_attr, svgfig.Axes.text_attr, svgfig.Plot.xlabels, svgfig.Frame.xlabels, svgfig.Plot.xlogbase, svgfig.Frame.xlogbase, svgfig.Axes.xlogbase, svgfig.Axes.xmax, fftjetcms::LookupTable2d.xmin(), TriggerDQMBase::MEbinning.xmin, AbsHcalFunctor.xmin(), MEbinning.xmin, PixelClusterizerBase::AccretionCluster.xmin, MEPSet.xmin, HcalLinearCompositionFunctor.xmin(), HcalChebyshevFunctor.xmin(), HcalCubicInterpolator.xmin(), HcalInterpolatedTableFunctor.xmin(), HcalPolynomialFunctor.xmin(), ClusterizingHistogram.xmin, BremsstrahlungSimulator.xmin, HcalPiecewiseLinearFunctor.xmin(), MTDClusterizerBase::AccretionCluster.xmin, SummationStep.xmin, GammaFunctionGenerator.xmin, MuonBremsstrahlungSimulator.xmin, BaseNumericalRandomGenerator.xmin, fftjetcms::LinInterpolatedTable1D.xmin(), dqmoffline::l1t::HistDefinition.xmin, HLTObjectsMonitor::MEbinning.xmin, cscdqm::AddressBox.xmin, TrackerMap.xmin, svgfig.Plot.xminiticks, svgfig.Frame.xminiticks, svgfig.Plot.xticks, svgfig.Frame.xticks, svgfig.Plot.ylabels, svgfig.Frame.ylabels, svgfig.Plot.ylogbase, svgfig.Frame.ylogbase, svgfig.Axes.ylogbase, svgfig.Plot.ymax, svgfig.Frame.ymax, svgfig.Axes.ymax, fftjetcms::LookupTable2d.ymin(), PixelClusterizerBase::AccretionCluster.ymin, MTDClusterizerBase::AccretionCluster.ymin, dqmoffline::l1t::HistDefinition.ymin, Exhume::Event.ymin, cscdqm::AddressBox.ymin, TrackerMap.ymin, svgfig.Plot.yminiticks, svgfig.Frame.yminiticks, svgfig.Plot.yticks, and svgfig.Frame.yticks.

Member Data Documentation

◆ arrows

svgfig.Axes.arrows

Definition at line 3085 of file svgfig.py.

Referenced by svgfig.Axes.SVG().

◆ attr

svgfig.Axes.attr

◆ aty

svgfig.Axes.aty

Definition at line 3082 of file svgfig.py.

Referenced by svgfig.Axes.__repr__(), and svgfig.Axes.SVG().

◆ defaults

dictionary svgfig.Axes.defaults = {"stroke-width":"0.25pt"}
static

Definition at line 3073 of file svgfig.py.

Referenced by tree.Tree.reset(), and tree.Tree.var().

◆ text_attr

svgfig.Axes.text_attr

Definition at line 3087 of file svgfig.py.

Referenced by svgfig.Axes.SVG().

◆ text_defaults

dictionary svgfig.Axes.text_defaults = {"stroke":"none", "fill":"black", "font-size":5}
static

Definition at line 3074 of file svgfig.py.

◆ xlogbase

svgfig.Axes.xlogbase

Definition at line 3083 of file svgfig.py.

Referenced by svgfig.Axes.SVG().

◆ xmax

svgfig.Axes.xmax

◆ ylogbase

svgfig.Axes.ylogbase

Definition at line 3084 of file svgfig.py.

Referenced by svgfig.Axes.SVG().

◆ ymax

svgfig.Axes.ymax
funct::abs
Abs< T >::type abs(const T &t)
Definition: Abs.h:22
update
#define update(a, b)
Definition: TrackClassifier.cc:10