PyPlotter - A Python/Jython Graph Plotting Package. Manual
|
4.2 Class Graph.Cartesian
Class Graph.Cartesian is versatile high level class for
drawing graphs on a cartesian plain. It supports linear and logarithmic
scales and automatic adjustment of the coordinate range as well as
automatic captioning.
- __init__
- gfx, x1, y1, x2, y2,
title = “Graph”, xaxis=”X”,
yaxis=”Y”,
styleFlags = DEFAULT_STYLE,
axisPen
= Gfx.BLACK_PEN, labelPen = Gfx.BLACK_PEN,
titlePen = Gfx.BLACK_PEN,
captionPen = Gfx.BLACK_PEN,
backgroundPen = Gfx.WHITE_PEN,
region = REGION_FULLSCREEN)
Initializes the class with
the following parameters:
- gfx
- Gfx.Driver: The Gfx drivers used for drawing the graph. Use AUTO_PEN
if you want the Graph.Cartesian object to find a suitable driver (depending
on the installed widget toolkits) on its own.
- x1,y1,x2,y2
- floats: Coordinate range.
- title
- string: Title string.
- xaxis, yaxis
- strings: Axis descriptions.
- styleFlags
- integer: Interpreted as a bitfield of flags that define the style of
the graph. The following flags can be set:
- AXISES, AXIS_DIVISION, FULL_GRID
- Draw axises, axis divisions and (or) a full grid.
- LABELS, CAPTION, TITLE
- Draw axis labels, a caption with descriptions (generated from the
pen names) below the graph, a title above the graph.
- SHUFFLE_DRAW, EVADE_DRAW
- Two different algorithms to allow for the visibility of overlapping
graphs.
- LOG_X, LOG_Y
- Use a logarithmic scale for the x or y axis respectively.
- KEEP_ASPECT
- Keep the aspect ratio of the coordinates.
- AUTO_ADJUST
- Automatically adjust the range of the graph when a point is added that
falls outside the current range.
- axisPen, labelPen, titlePen, captionPen, backgroundPen
- Gfx.Pen: Pens (sets of graphical attributes) for the respective elements
of the graph.
- region
- 4-tuple of floats. The part of the screen that is used for the graph.
Example: (0.05, 0.05, 0.95, 0.95) would leave a border of 5 % of the
screen size on each side.
- adjustRange
- x1, y1, x2, y2) - Adjusts the range of the coordinate plane.
- setStyle
- styleFlags=None, axisPen=None,
labelPen=None, titlePen=None,
captionPen=None,
backgroundPen = None) - Changes the style of
the graph. Only parameters that are not None will be changed.
- setTitle
- title) - Changes the title of the graph.
- setLabels
- xaxis=None, yaxis=None) - Changes the labels of the graph.
- resizedGfx
- - Takes notice of a resized window.
- changeGfx
- gfx) - Switch to another device context. This can be useful if you
want to draw the current graph into a buffered image that you want
to save on a disk. In this case you have to create the buffered image,
create the Gfx driver for your buffered image, call changeGfx and then
redraw. After that you can call changeGfx to switch back to the former
output device.
- redrawGraph
- - Redraws the graph, but not the caption, title or labels.
- redrawCaption
- - Redraw only the caption of the graph.
- redraw
- - Redraws the whole graph including, title, labels and the caption.
- reset
- x1, y1, x2, y2) - Restarts with a new empty graph of the given range.
All pens are removed.
- addPen
- name, pen=AUTO_GENERATE_PEN,
updateCaption=True) - Adds a new
pen with name “name” and attributes “pen” to
the graph.
- removePen
- name, redraw=True) - Removes a pen from the graph. All coordinate pairs
associated with this pen will be discarded.
- addValue
- name, x, y) - Add the point (x,y) to the graph drawn with pen “name”.
- peek
- x, y) - Returns the graph coordinates of the screen coordinates (x,y)
- xaxisSteps
- x1, x2) - Returns a list of virtual x-coordinates in the range [x1,x2]
with one point for each screen pixel. This is especially useful when
working with large range logarithmic scales.
- yaxisSteps
- y1, y2) - Returns a list of virtual x-coordinates in the range [y1,y2]
with one point for each screen pixel. This is especially useful when
working with large range logarithmic scales.
|
 |
 |
g+
f
@