Zeta Components - high quality PHP components

Zeta Components Manual :: Docs For Class ezcGraphAxisLabelRenderer

Graph::ezcGraphAxisLabelRenderer

Class ezcGraphAxisLabelRenderer

Abstract class to render labels and grids on axis. Will be extended to make it possible using different algorithms for rendering axis labels.

Implements basic methods to render the grid and steps on a axis.

Source for this file: /Graph/src/interfaces/axis_label_renderer.php

ezcBaseOptions
   |
   --ezcGraphAxisLabelRenderer
Version:   //autogentag//

Descendants

Child Class Description
ezcGraphAxisRotatedLabelRenderer Can render axis labels rotated, so that more axis labels fit on one axis.
ezcGraphAxisNoLabelRenderer Omits axis labels, steps and grid.
ezcGraphAxisExactLabelRenderer Renders axis labels like known from charts drawn in analysis
ezcGraphAxisRadarLabelRenderer Renders axis labels and grid optimized for radar charts. May cause unexpected results when used with other chart types.
ezcGraphAxisBoxedLabelRenderer Renders axis labels centered between two axis steps like normally used for bar charts. Used with other chart types this axis label renderer may cause unexpected results. You may use this renderer by assigning it to one of the charts axis.
ezcGraphAxisCenteredLabelRenderer Renders axis labels centered below the axis steps.

Properties

bool read/write $innerStep
Indicates if steps are shown on the inner side of axis.
int read/write $labelPadding
Padding of labels.
bool read/write $majorStepCount
Count of major steps.
int read/write $majorStepSize
Size of major steps.
bool read/write $minorStepCount
Count of minor steps.
int read/write $minorStepSize
Size of minor steps.
bool read/write $outerGrid
Indicates if the grid is shown on the outer side of axis.
bool read/write $outerStep
Indicates if steps are shown on the outer side of axis.
bool read/write $showLables
Indicates if the labels should be shown

Member Variables

protected ezcGraphDriver $driver
Driver to render axis labels

Inherited Member Variables

From ezcBaseOptions
protected ezcBaseOptions::$properties

Method Summary

public mixed determineLineCuttingPoint( $aStart , $aDir , $bStart , $bDir )
Checks for the cutting point of two lines.
protected void drawGrid( $renderer , $boundings , $position , $direction , $color )
Draw grid
protected void drawNonRectangularGrid( $renderer , $boundings , $position , $direction , $color )
Draw non-rectangular grid lines grid
protected void drawRectangularGrid( $renderer , $boundings , $position , $direction , $color )
Draw rectangular grid
public void drawStep( $renderer , $position , $direction , $axisPosition , $size , $color )
Draw single step on a axis
protected array getAxisSpace( $renderer , $boundings , $axis , $innerBoundings , &$gridBoundings )
Get axis space values
public ezcGraphBoundings modifyChartBoundings( $boundings , $direction )
Modify chart boundings
public ezcGraphCoordinate modifyChartDataPosition( $coordinate )
Modify chart data position
public abstract void renderLabels( $renderer , $boundings , $start , $end , $axis )
Render Axis labels

Inherited Methods

From ezcBaseOptions
public ezcBaseOptions ezcBaseOptions::__construct()
Construct a new options object.
public void ezcBaseOptions::merge()
Merge an array into the actual options object.
public bool ezcBaseOptions::offsetExists()
Returns if an option exists.
public mixed ezcBaseOptions::offsetGet()
Returns an option value.
public void ezcBaseOptions::offsetSet()
Set an option.
public void ezcBaseOptions::offsetUnset()
Unset an option.

Methods

determineLineCuttingPoint

mixed determineLineCuttingPoint( ezcGraphCoordinate $aStart , ezcGraphCoordinate $aDir , ezcGraphCoordinate $bStart , ezcGraphCoordinate $bDir )

Checks for the cutting point of two lines.

The lines are given by a start position and the direction of the line, both as instances of ezcGraphCoordinate. If no cutting point could be calculated, because the lines are parallel the function will return false. Otherwise the factor returned can be used to calculate the cutting point using the following equatation: point = $aStart + $factor * $aDir;

We return the factor instead of the resulting point because it can be easily determined from the factor if the cutting point is in "behind" the line starting point, or if the distance to the cutting point is bigger then the direction vector is long ( $factor > 1 ).

Parameters:
Name Type Description
$aStart ezcGraphCoordinate
$aDir ezcGraphCoordinate
$bStart ezcGraphCoordinate
$bDir ezcGraphCoordinate

drawGrid

void drawGrid( ezcGraphRenderer $renderer , $boundings , ezcGraphCoordinate $position , ezcGraphCoordinate $direction , ezcGraphColor $color )

Draw grid

Draws a grid line at the current position

Parameters:
Name Type Description
$renderer ezcGraphRenderer Renderer to draw the grid with
$boundings ezcGraphBoundings Boundings of axis
$position ezcGraphCoordinate Position of step
$direction ezcGraphCoordinate Direction of axis
$color ezcGraphColor Color of axis
Redefined in descendants as:
Method Description
ezcGraphAxisRadarLabelRenderer::drawGrid() Draw grid 

drawNonRectangularGrid

void drawNonRectangularGrid( ezcGraphRenderer $renderer , $boundings , ezcGraphCoordinate $position , ezcGraphCoordinate $direction , ezcGraphColor $color )

Draw non-rectangular grid lines grid

Draws a grid line at the current position, for non-rectangular axis.

Parameters:
Name Type Description
$renderer ezcGraphRenderer Renderer to draw the grid with
$boundings ezcGraphBoundings Boundings of axis
$position ezcGraphCoordinate Position of step
$direction ezcGraphCoordinate Direction of axis
$color ezcGraphColor Color of axis

drawRectangularGrid

void drawRectangularGrid( ezcGraphRenderer $renderer , $boundings , ezcGraphCoordinate $position , ezcGraphCoordinate $direction , ezcGraphColor $color )

Draw rectangular grid

Draws a grid line at the current position for rectangular directed axis.

Method special for rectangularly directed axis to minimize the floating point calculation inaccuracies. Those are not necessary for rectangles, while for non-rectangular directed axis.

Parameters:
Name Type Description
$renderer ezcGraphRenderer Renderer to draw the grid with
$boundings ezcGraphBoundings Boundings of axis
$position ezcGraphCoordinate Position of step
$direction ezcGraphCoordinate Direction of axis
$color ezcGraphColor Color of axis

drawStep

void drawStep( ezcGraphRenderer $renderer , ezcGraphCoordinate $position , ezcGraphCoordinate $direction , int $axisPosition , int $size , ezcGraphColor $color )

Draw single step on a axis

Draws a step on a axis at the current position

Parameters:
Name Type Description
$renderer ezcGraphRenderer Renderer to draw the step with
$position ezcGraphCoordinate Position of step
$direction ezcGraphCoordinate Direction of axis
$axisPosition int Position of axis
$size int Step size
$color ezcGraphColor Color of axis

getAxisSpace

array getAxisSpace( ezcGraphRenderer $renderer , $boundings , ezcGraphChartElementAxis $axis , mixed $innerBoundings , &$gridBoundings )

Get axis space values

Get axis space values, depending on passed parameters. If $innerBoundings is given it will be used to caclulat the axis spaces available for label rendering. If not given the legacy method will be used, which uses the xAxisSpace and yAxisSpace values calcualted by the renderer.

Returns an array( $xSpace, $ySpace ), containing the irespective size in pixels. Additionally calculates the grid boundings passed by reference.

Parameters:
Name Type Description
$renderer ezcGraphRenderer
$boundings ezcGraphBoundings
$innerBoundings mixed
$axis ezcGraphChartElementAxis
&$gridBoundings

modifyChartBoundings

ezcGraphBoundings modifyChartBoundings( $boundings , ezcGraphCoordinate $direction )

Modify chart boundings

Optionally modify boundings of chart data

Parameters:
Name Type Description
$boundings ezcGraphBoundings Current boundings of chart
$direction ezcGraphCoordinate Direction of the current axis

modifyChartDataPosition

ezcGraphCoordinate modifyChartDataPosition( ezcGraphCoordinate $coordinate )

Modify chart data position

Optionally additionally modify the coodinate of a data point

Parameters:
Name Type Description
$coordinate ezcGraphCoordinate Data point coordinate
Redefined in descendants as:
Method Description
ezcGraphAxisRotatedLabelRenderer::modifyChartDataPosition() Modify chart data position 
ezcGraphAxisRotatedBoxedLabelRenderer::modifyChartDataPosition() Modify chart data position 
ezcGraphAxisBoxedLabelRenderer::modifyChartDataPosition() Modify chart data position 

renderLabels

void renderLabels( ezcGraphRenderer $renderer , $boundings , ezcGraphCoordinate $start , ezcGraphCoordinate $end , ezcGraphChartElementAxis $axis )

Render Axis labels

Render labels for an axis.

Parameters:
Name Type Description
$renderer ezcGraphRenderer Renderer used to draw the chart
$boundings ezcGraphBoundings Boundings of the axis
$start ezcGraphCoordinate Axis starting point
$end ezcGraphCoordinate Axis ending point
$axis ezcGraphChartElementAxis Axis instance
Redefined in descendants as:
Method Description
ezcGraphAxisRotatedLabelRenderer::renderLabels() Render Axis labels 
ezcGraphAxisRotatedBoxedLabelRenderer::renderLabels() Render Axis labels 
ezcGraphAxisNoLabelRenderer::renderLabels() Render Axis labels 
ezcGraphAxisExactLabelRenderer::renderLabels() Render Axis labels 
ezcGraphAxisRadarLabelRenderer::renderLabels() Render Axis labels 
ezcGraphAxisBoxedLabelRenderer::renderLabels() Render Axis labels 
ezcGraphAxisCenteredLabelRenderer::renderLabels() Render Axis labels 
Documentation generated by phpDocumentor 1.4.3