## Apache Zeta Components Manual :: Docs For Class ezcGraphAxisRotatedLabelRenderer

### Graph::ezcGraphAxisRotatedLabelRenderer

### Class ezcGraphAxisRotatedLabelRenderer

Can render axis labels rotated, so that more axis labels fit on one axis.

Produces best results if the axis space was increased, so that more spcae is available below the axis.

1. $chart->xAxis->axisLabelRenderer=new ezcGraphAxisRotatedLabelRenderer ();
3. // Define angle manually in degree
4. $chart->xAxis->axisLabelRenderer->angle=45;
6. // Increase axis space
7. $chart->xAxis->axisSpace=.2;

Source for this file: /Graph/src/renderer/axis_label_rotated.php

    ezcBaseOptions
       |
       --ezcGraphAxisLabelRenderer
          |
          --ezcGraphAxisRotatedLabelRenderer

Version: | //autogentag//

### Descendants

Child Class | Description
--- | ---
ezcGraphAxisRotatedBoxedLabelRenderer | Can render axis labels rotated, so that more axis labels fit on one axis.

### Properties

float | read/write | `$angle` Angle of labels on axis in degrees.

### Member Variables

protected ezcGraphVector | `$direction` Store direction for later coordinate modifications
protected float | `$offset` Store coordinate offset for later coordinate modifications
protected array(ezcGraphStep) | `$steps` Store step array for later coordinate modifications
protected float | `$widthModifier` Store coordinate width modifier for later coordinate modifications

### Inherited Member Variables

From ezcGraphAxisLabelRenderer
protected | `ezcGraphAxisLabelRenderer::$driver`
From ezcBaseOptions
protected | `ezcBaseOptions::$properties`

### Method Summary

protected float | `calculateLabelLength( $start , $end , $xSpace , $ySpace , $axisBoundings )` Calculate general label length
protected float | `calculateLabelSize( $steps , $nr , $step , $xSpace , $ySpace , $axisBoundings )` Calculate label size
protected void | `determineAngle( $steps , $xSpace , $ySpace , $axisBoundings )` Determine label angle
protected float | `determineTextOffset( $axis , $steps )` Determine text offset.
public ezcGraphCoordinate | `modifyChartDataPosition( $coordinate )` Modify chart data position
public void | `renderLabels( $renderer , $boundings , $start , $end , $axis , [ $innerBoundings = null] )` Render Axis labels
protected void | `renderLabelText( $renderer , $axis , $position , $label , $degTextAngle , $labelLength , $labelSize , $lengthReducement )` Render label text.

### Inherited Methods

From ezcGraphAxisLabelRenderer
public mixed | `ezcGraphAxisLabelRenderer::determineLineCuttingPoint()` Checks for the cutting point of two lines.
protected void | `ezcGraphAxisLabelRenderer::drawGrid()` Draw grid
protected void | `ezcGraphAxisLabelRenderer::drawNonRectangularGrid()` Draw non-rectangular grid lines grid
protected void | `ezcGraphAxisLabelRenderer::drawRectangularGrid()` Draw rectangular grid
public void | `ezcGraphAxisLabelRenderer::drawStep()` Draw single step on a axis
protected array | `ezcGraphAxisLabelRenderer::getAxisSpace()` Get axis space values
public ezcGraphBoundings | `ezcGraphAxisLabelRenderer::modifyChartBoundings()` Modify chart boundings
public ezcGraphCoordinate | `ezcGraphAxisLabelRenderer::modifyChartDataPosition()` Modify chart data position
public abstract void | `ezcGraphAxisLabelRenderer::renderLabels()` Render Axis labels
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

#### calculateLabelLength

float calculateLabelLength( ezcGraphCoordinate $start , ezcGraphCoordinate $end , float $xSpace , float $ySpace , $axisBoundings )

Calculate general label length

##### Parameters:

Name | Type | Description
--- | --- | ---
`$start` | ezcGraphCoordinate |
`$end` | ezcGraphCoordinate |
`$xSpace` | float |
`$ySpace` | float |
`$axisBoundings` | ezcGraphBoundings |

#### calculateLabelSize

float calculateLabelSize( $steps , int $nr , array $step , float $xSpace , float $ySpace , $axisBoundings )

Calculate label size

Calculate the size of a single lable in a single step.

##### Parameters:

Name | Type | Description
--- | --- | ---
`$steps` | array |
`$nr` | int |
`$step` | array |
`$xSpace` | float |
`$ySpace` | float |
`$axisBoundings` | ezcGraphBoundings |

#### determineAngle

void determineAngle( $steps , $xSpace , $ySpace , $axisBoundings )

Determine label angle

Determine the optiomal angle for the axis labels, of no angle has been provided by the user.

##### Parameters:

Name | Type | Description
--- | --- | ---
`$steps` | array |
`$xSpace` |  |
`$ySpace` |  |
`$axisBoundings` | ezcGraphBoundings |

#### determineTextOffset

float determineTextOffset( ezcGraphChartElementAxis $axis , $steps )

Determine text offset.

Calculate the label offset and angle, from the configured or evaluated text angle.

Returns the text angle in degrees.

##### Parameters:

Name | Type | Description
--- | --- | ---
`$axis` | ezcGraphChartElementAxis |
`$steps` | array |

#### 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

##### Redefinition of:

Method | Description
--- | ---
`ezcGraphAxisLabelRenderer::modifyChartDataPosition()` | Modify chart data position

##### Redefined in descendants as:

Method | Description
--- | ---
`ezcGraphAxisRotatedBoxedLabelRenderer::modifyChartDataPosition()` | Modify chart data position

#### renderLabels

void renderLabels( ezcGraphRenderer $renderer , $boundings , ezcGraphCoordinate $start , ezcGraphCoordinate $end , ezcGraphChartElementAxis $axis , [ $innerBoundings = null] )

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
`$innerBoundings` | ezcGraphBoundings |

##### Redefinition of:

Method | Description
--- | ---
`ezcGraphAxisLabelRenderer::renderLabels()` | Render Axis labels

##### Redefined in descendants as:

Method | Description
--- | ---
`ezcGraphAxisRotatedBoxedLabelRenderer::renderLabels()` | Render Axis labels

#### renderLabelText

void renderLabelText( ezcGraphRenderer $renderer , ezcGraphChartElementAxis $axis , ezcGraphCoordinate $position , string $label , float $degTextAngle , float $labelLength , float $labelSize , float $lengthReducement )

Render label text.

Render the text of a single label, depending on the position, length and rotation of the label.

##### Parameters:

Name | Type | Description
--- | --- | ---
`$renderer` | ezcGraphRenderer |
`$axis` | ezcGraphChartElementAxis |
`$position` | ezcGraphCoordinate |
`$label` | string |
`$degTextAngle` | float |
`$labelLength` | float |
`$labelSize` | float |
`$lengthReducement` | float |

Documentation generated by phpDocumentor 1.4.3