CMS 3D CMS Logo

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

Public Member Functions

def __init__ (self, xmin, xmax, ymin, ymax, *d, **kwds)
 
def __repr__ (self)
 
def SVG (self, trans=None)
 

Public Attributes

 arrows
 
 atx
 
 aty
 
 axis_attr
 
 d
 
 flipx
 
 flipy
 
 height
 
 last_window
 
 minusInfinity
 
 text_attr
 
 trans
 
 width
 
 x
 
 xlabels
 
 xlogbase
 
 xminiticks
 
 xticks
 
 y
 
 ylabels
 
 ylogbase
 
 ymax
 
 yminiticks
 
 yticks
 

Detailed Description

Acts like Fig, but draws a coordinate axis. You also need to supply plot ranges.

Plot(xmin, xmax, ymin, ymax, obj, obj, obj..., keyword options...)

xmin, xmax      required        minimum and maximum x values (in the objs' coordinates)
ymin, ymax      required        minimum and maximum y values (in the objs' coordinates)
obj             optional list   drawing primatives
keyword options keyword list    options defined below

The following are keyword options, with their default values:

trans           None          transformation function
x, y            5, 5          upper-left corner of the Plot in SVG coordinates
width, height   90, 90        width and height of the Plot in SVG coordinates
flipx, flipy    False, True   flip the sign of the coordinate axis
minusInfinity   -1000         if an axis is logarithmic and an object is plotted at 0 or
                              a negative value, -1000 will be used as a stand-in for NaN
atx, aty        0, 0          the place where the coordinate axes cross
xticks          -10           request ticks according to the standard tick specification
                              (see help(Ticks))
xminiticks      True          request miniticks according to the standard minitick
                              specification
xlabels         True          request tick labels according to the standard tick label
                              specification
xlogbase        None          if a number, the axis and transformation are logarithmic
                              with ticks at the given base (10 being the most common)
(same for y)
arrows          None          if a new identifier, create arrow markers and draw them
                              at the ends of the coordinate axes
text_attr       {}            a dictionary of attributes for label text
axis_attr       {}            a dictionary of attributes for the axis lines

Definition at line 783 of file svgfig.py.

Constructor & Destructor Documentation

◆ __init__()

def svgfig.Plot.__init__ (   self,
  xmin,
  xmax,
  ymin,
  ymax,
d,
**  kwds 
)

Definition at line 823 of file svgfig.py.

823  def __init__(self, xmin, xmax, ymin, ymax, *d, **kwds):
824  self.xmin, self.xmax, self.ymin, self.ymax = xmin, xmax, ymin, ymax
825  self.d = list(d)
826  defaults = {"trans":None, "x":5, "y":5, "width":90, "height":90, "flipx":False, "flipy":True, "minusInfinity":-1000, \
827  "atx":0, "xticks":-10, "xminiticks":True, "xlabels":True, "xlogbase":None, \
828  "aty":0, "yticks":-10, "yminiticks":True, "ylabels":True, "ylogbase":None, \
829  "arrows":None, "text_attr":{}, "axis_attr":{}}
830  defaults.update(kwds)
831  kwds = defaults
832 
833  self.trans = kwds["trans"]; del kwds["trans"]
834  self.x = kwds["x"]; del kwds["x"]
835  self.y = kwds["y"]; del kwds["y"]
836  self.width = kwds["width"]; del kwds["width"]
837  self.height = kwds["height"]; del kwds["height"]
838  self.flipx = kwds["flipx"]; del kwds["flipx"]
839  self.flipy = kwds["flipy"]; del kwds["flipy"]
840  self.minusInfinity = kwds["minusInfinity"]; del kwds["minusInfinity"]
841  self.atx = kwds["atx"]; del kwds["atx"]
842  self.xticks = kwds["xticks"]; del kwds["xticks"]
843  self.xminiticks = kwds["xminiticks"]; del kwds["xminiticks"]
844  self.xlabels = kwds["xlabels"]; del kwds["xlabels"]
845  self.xlogbase = kwds["xlogbase"]; del kwds["xlogbase"]
846  self.aty = kwds["aty"]; del kwds["aty"]
847  self.yticks = kwds["yticks"]; del kwds["yticks"]
848  self.yminiticks = kwds["yminiticks"]; del kwds["yminiticks"]
849  self.ylabels = kwds["ylabels"]; del kwds["ylabels"]
850  self.ylogbase = kwds["ylogbase"]; del kwds["ylogbase"]
851  self.arrows = kwds["arrows"]; del kwds["arrows"]
852  self.text_attr = kwds["text_attr"]; del kwds["text_attr"]
853  self.axis_attr = kwds["axis_attr"]; del kwds["axis_attr"]
854  if len(kwds) != 0:
855  raise TypeError("Plot() got unexpected keyword arguments %s" % kwds.keys())
856 

Member Function Documentation

◆ __repr__()

def svgfig.Plot.__repr__ (   self)

Definition at line 817 of file svgfig.py.

817  def __repr__(self):
818  if self.trans == None:
819  return "<Plot (%d items)>" % len(self.d)
820  else:
821  return "<Plot (%d items) %s>" % (len(self.d), self.trans.__name__)
822 

Referenced by data_sources.json_file.__str__().

◆ SVG()

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

Definition at line 857 of file svgfig.py.

857  def SVG(self, trans=None):
858  """Apply the transformation "trans" and return an SVG object."""
859  if trans == None: trans = self.trans
860  if isinstance(trans, str): trans = totrans(trans)
861 
862  self.last_window = window(self.xmin, self.xmax, self.ymin, self.ymax, x=self.x, y=self.y, width=self.width, height=self.height, \
863  xlogbase=self.xlogbase, ylogbase=self.ylogbase, minusInfinity=self.minusInfinity, flipx=self.flipx, flipy=self.flipy)
864 
865  d = [Axes(self.xmin, self.xmax, self.ymin, self.ymax, self.atx, self.aty, \
866  self.xticks, self.xminiticks, self.xlabels, self.xlogbase, \
867  self.yticks, self.yminiticks, self.ylabels, self.ylogbase, \
868  self.arrows, self.text_attr, **self.axis_attr)] \
869  + self.d
870 
871  return Fig(Fig(*d, **{"trans":trans})).SVG(self.last_window)
872 

References svgfig.totrans(), svgfig.Fig.trans, and svgfig.Plot.trans.

Member Data Documentation

◆ arrows

svgfig.Plot.arrows

Definition at line 851 of file svgfig.py.

Referenced by svgfig.Axes.SVG().

◆ atx

svgfig.Plot.atx

Definition at line 841 of file svgfig.py.

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

◆ aty

svgfig.Plot.aty

Definition at line 846 of file svgfig.py.

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

◆ axis_attr

svgfig.Plot.axis_attr

Definition at line 853 of file svgfig.py.

◆ d

svgfig.Plot.d

◆ flipx

svgfig.Plot.flipx

Definition at line 838 of file svgfig.py.

◆ flipy

svgfig.Plot.flipy

Definition at line 839 of file svgfig.py.

◆ height

svgfig.Plot.height

◆ last_window

svgfig.Plot.last_window

Definition at line 862 of file svgfig.py.

◆ minusInfinity

svgfig.Plot.minusInfinity

Definition at line 840 of file svgfig.py.

◆ text_attr

svgfig.Plot.text_attr

Definition at line 852 of file svgfig.py.

Referenced by svgfig.Axes.SVG().

◆ trans

svgfig.Plot.trans

Definition at line 818 of file svgfig.py.

Referenced by svgfig.Plot.SVG().

◆ width

svgfig.Plot.width

◆ x

svgfig.Plot.x

◆ xlabels

svgfig.Plot.xlabels

Definition at line 844 of file svgfig.py.

Referenced by svgfig.Axes.SVG().

◆ xlogbase

svgfig.Plot.xlogbase

Definition at line 845 of file svgfig.py.

Referenced by svgfig.Axes.SVG().

◆ xminiticks

svgfig.Plot.xminiticks

Definition at line 843 of file svgfig.py.

Referenced by svgfig.Axes.SVG().

◆ xticks

svgfig.Plot.xticks

Definition at line 842 of file svgfig.py.

Referenced by svgfig.Axes.SVG().

◆ y

svgfig.Plot.y

◆ ylabels

svgfig.Plot.ylabels

Definition at line 849 of file svgfig.py.

Referenced by svgfig.Axes.SVG().

◆ ylogbase

svgfig.Plot.ylogbase

Definition at line 850 of file svgfig.py.

Referenced by svgfig.Axes.SVG().

◆ ymax

svgfig.Plot.ymax

◆ yminiticks

svgfig.Plot.yminiticks

Definition at line 848 of file svgfig.py.

Referenced by svgfig.Axes.SVG().

◆ yticks

svgfig.Plot.yticks

Definition at line 847 of file svgfig.py.

Referenced by svgfig.Axes.SVG().

svgfig.window
def window(xmin, xmax, ymin, ymax, x=0, y=0, width=100, height=100, xlogbase=None, ylogbase=None, minusInfinity=-1000, flipx=False, flipy=True)
Definition: svgfig.py:643
svgfig.totrans
def totrans(expr, vars=("x", "y"), globals=None, locals=None)
Definition: svgfig.py:598