summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKore Nordmann <github@kore-nordmann.de>2006-10-26 14:08:20 +0000
committerKore Nordmann <github@kore-nordmann.de>2006-10-26 14:08:20 +0000
commitb6069cc0bfb2a7baaf2e79263cfc9c222d9e8299 (patch)
treea59d5e0b75fefd08ece3c927211f6f6e965e7933
parent7e56dbbe610469d173133cc6f2d19da5039079bb (diff)
downloadzetacomponents-graph-b6069cc0bfb2a7baaf2e79263cfc9c222d9e8299.zip
zetacomponents-graph-b6069cc0bfb2a7baaf2e79263cfc9c222d9e8299.tar.gz
- Added some more tests for read and write accesss on properties
-rw-r--r--src/element/axis.php4
-rw-r--r--src/element/background.php2
-rw-r--r--src/element/legend.php13
-rw-r--r--src/element/text.php2
-rw-r--r--src/interfaces/element.php21
-rw-r--r--src/options/driver.php11
-rw-r--r--src/options/font.php4
-rw-r--r--src/options/line_chart.php2
-rw-r--r--src/options/ming_driver.php2
-rw-r--r--src/options/renderer.php20
-rw-r--r--src/options/renderer_3d.php18
-rw-r--r--tests/data/compare/ezcGraphLegendTest_testBottomLegend.svg2
-rw-r--r--tests/data/compare/ezcGraphLegendTest_testLeftLegend.svg2
-rw-r--r--tests/data/compare/ezcGraphLegendTest_testRightLegend.svg2
-rw-r--r--tests/data/compare/ezcGraphLegendTest_testTopLegend.svg2
-rw-r--r--tests/data/compare/ezcGraphRenderer3dTest_testRender3dFilledLineChartNonFilledGrid.svg2
-rw-r--r--tests/driver_gd_test.php178
-rw-r--r--tests/driver_ming_test.php37
-rw-r--r--tests/driver_options_test.php112
-rw-r--r--tests/driver_svg_test.php287
-rw-r--r--tests/element_options_test.php702
-rw-r--r--tests/font_test.php344
-rw-r--r--tests/line_test.php122
-rw-r--r--tests/pie_test.php90
-rw-r--r--tests/renderer_2d_test.php412
-rw-r--r--tests/renderer_3d_test.php228
-rw-r--r--tests/suite.php4
27 files changed, 2573 insertions, 52 deletions
diff --git a/src/element/axis.php b/src/element/axis.php
index b554464..7a0b76b 100644
--- a/src/element/axis.php
+++ b/src/element/axis.php
@@ -15,9 +15,9 @@
* @property float $axisSpace
* Percent of the chart space used to display axis labels and
* arrowheads instead of data values.
- * @property ezcGraphColor $majorStep
+ * @property ezcGraphColor $majorGrid
* Color of major majorGrid.
- * @property ezcGraphColor $minorStep
+ * @property ezcGraphColor $minorGrid
* Color of minor majorGrid.
* @property mixed $majorStep
* Labeled major steps displayed on the axis.
diff --git a/src/element/background.php b/src/element/background.php
index 50c82c4..e6b3885 100644
--- a/src/element/background.php
+++ b/src/element/background.php
@@ -99,7 +99,7 @@ class ezcGraphChartElementBackground extends ezcGraphChartElement
}
else
{
- throw new ezcBaseValeException( $propertyName, $propertyValue, '0 <= int <= 3' );
+ throw new ezcBaseValueException( $propertyName, $propertyValue, '0 <= int <= 3' );
}
break;
case 'position':
diff --git a/src/element/legend.php b/src/element/legend.php
index e348b75..d9953b5 100644
--- a/src/element/legend.php
+++ b/src/element/legend.php
@@ -80,19 +80,22 @@ class ezcGraphChartElementLegend extends ezcGraphChartElement
switch ( $propertyName )
{
case 'padding':
- $this->padding = max( 0, (int) $propertyValue );
+ $this->properties['padding'] = max( 0, (int) $propertyValue );
break;
case 'symbolSize':
- $this->symbolSize = max( 1, (int) $propertyValue );
+ $this->properties['symbolSize'] = max( 1, (int) $propertyValue );
break;
case 'landscapeSize':
- $this->landscapeSize = max( 0, min( 1, (float) $propertyValue ) );
+ $this->properties['landscapeSize'] = max( 0, min( 1, (float) $propertyValue ) );
break;
case 'portraitSize':
- $this->portraitSize = max( 0, min( 1, (float) $propertyValue ) );
+ $this->properties['portraitSize'] = max( 0, min( 1, (float) $propertyValue ) );
+ break;
+ case 'minimumSymbolSize':
+ $this->properties['minimumSymbolSize'] = max( 0, min( 1, (float) $propertyValue ) );
break;
case 'spacing':
- $this->portraitSize = max( 0, (int) $propertyValue );
+ $this->properties['spacing'] = max( 0, (int) $propertyValue );
break;
default:
parent::__set( $propertyName, $propertyValue );
diff --git a/src/element/text.php b/src/element/text.php
index 36e6809..64b34ab 100644
--- a/src/element/text.php
+++ b/src/element/text.php
@@ -10,7 +10,7 @@
/**
* Chart element to display texts in a chart
*
- * @property float $height
+ * @property float $maxHeight
* Maximum percent of bounding used to display the text.
*
* @package Graph
diff --git a/src/interfaces/element.php b/src/interfaces/element.php
index 3ddc5e6..c78ff86 100644
--- a/src/interfaces/element.php
+++ b/src/interfaces/element.php
@@ -14,8 +14,6 @@
* Title of chart element.
* @property ezcGraphColor $background
* Background color of chart element.
- * @property ezcGraphBoundings $boundings
- * Boundings of this elements.
* @property ezcGraphColor $border
* Border color of chart element.
* @property int $padding
@@ -36,9 +34,11 @@
* position top or bottom.
* @property ezcGraphFontOptions $font
* Font used for this element.
- * @property bool $fontCloned
- * Indicates if font configuration was already cloned for this
- * specific element.
+ * @property-read bool $fontCloned
+ * Indicates if font configuration was already cloned for this
+ * specific element.
+ * @property-read ezcGraphBoundings $boundings
+ * Boundings of this elements.
*
* @package Graph
*/
@@ -157,8 +157,17 @@ abstract class ezcGraphChartElement extends ezcBaseOptions
throw new ezcBaseValueException( 'position', $propertyValue, 'integer' );
}
break;
+ case 'maxTitleHeight':
+ $this->properties['maxTitleHeight'] = max( 0, (int) $propertyValue );
+ break;
+ case 'portraitTitleSize':
+ $this->properties['portraitTitleSize'] = max( 0., min( 1., (float) $propertyValue ) );
+ break;
+ case 'landscapeTitleSize':
+ $this->properties['landscapeTitleSize'] = max( 0., min( 1., (float) $propertyValue ) );
+ break;
default:
- throw new ezcGraphNoSuchDataSetException( $propertyName );
+ throw new ezcBasePropertyNotFoundException( $propertyName );
break;
}
}
diff --git a/src/options/driver.php b/src/options/driver.php
index 2bc2c55..fd905e5 100644
--- a/src/options/driver.php
+++ b/src/options/driver.php
@@ -16,11 +16,12 @@
* Height of the chart.
* @property float $shadeCircularArc
* Percent to darken circular arcs at the sides
- * @property int $font
- * Font used in the graph.
* @property float $lineSpacing
* Percent of font size used for line spacing
*
+ * @property int $font
+ * Font used in the graph.
+ *
* @package Graph
*/
abstract class ezcGraphDriverOptions extends ezcBaseOptions
@@ -34,6 +35,9 @@ abstract class ezcGraphDriverOptions extends ezcBaseOptions
*/
public function __construct( array $options = array() )
{
+ $this->properties['width'] = false;
+ $this->properties['height'] = false;
+
$this->properties['lineSpacing'] = .1;
$this->properties['shadeCircularArc'] = .5;
$this->properties['font'] = new ezcGraphFontOptions();
@@ -61,6 +65,9 @@ abstract class ezcGraphDriverOptions extends ezcBaseOptions
case 'height':
$this->properties['height'] = max( 1, (int) $propertyValue );
break;
+ case 'lineSpacing':
+ $this->properties['lineSpacing'] = max( 0, min( 1, (float) $propertyValue ) );
+ break;
case 'shadeCircularArc':
$this->properties['shadeCircularArc'] = max( 0, min( 1, (float) $propertyValue ) );
break;
diff --git a/src/options/font.php b/src/options/font.php
index 523687c..0a0f135 100644
--- a/src/options/font.php
+++ b/src/options/font.php
@@ -27,8 +27,6 @@
* The minimal used font size for this element.
* @property ezcGraphColor $color
* Font color.
- * @property float $lineSpacing
- * Percent of font size used for line spacing
* @property ezcGraphColor $background
* Background color
* @property ezcGraphColor $border
@@ -70,7 +68,6 @@ class ezcGraphFontOptions extends ezcBaseOptions
$this->properties['minFontSize'] = 6;
$this->properties['maxFontSize'] = 96;
$this->properties['minimalUsedFont'] = 96;
- $this->properties['lineSpacing'] = .1;
$this->properties['color'] = ezcGraphColor::fromHex( '#000000' );
$this->properties['background'] = false;
@@ -187,6 +184,7 @@ class ezcGraphFontOptions extends ezcBaseOptions
{
throw new ezcBaseValueException( $propertyName, $propertyValue, 'int' );
}
+ break;
default:
throw new ezcBasePropertyNotFoundException( $propertyName );
break;
diff --git a/src/options/line_chart.php b/src/options/line_chart.php
index c8eadb5..a90512a 100644
--- a/src/options/line_chart.php
+++ b/src/options/line_chart.php
@@ -96,7 +96,7 @@ class ezcGraphLineChartOptions extends ezcGraphChartOptions
}
else
{
- throw new ezcBaseValueException( $propertyValue, 'ezcGraphFontOptions' );
+ throw new ezcBaseValueException( $propertyName, $propertyValue, 'ezcGraphFontOptions' );
}
break;
case 'highlightSize':
diff --git a/src/options/ming_driver.php b/src/options/ming_driver.php
index 22483ae..4e5d1cd 100644
--- a/src/options/ming_driver.php
+++ b/src/options/ming_driver.php
@@ -31,7 +31,7 @@ class ezcGraphMingDriverOptions extends ezcGraphDriverOptions
public function __construct( array $options = array() )
{
$this->properties['compression'] = 9;
- $this->properties['circleResolution'] = 2;
+ $this->properties['circleResolution'] = 2.;
parent::__construct( $options );
}
diff --git a/src/options/renderer.php b/src/options/renderer.php
index 489bbbe..35441ef 100644
--- a/src/options/renderer.php
+++ b/src/options/renderer.php
@@ -101,13 +101,13 @@ class ezcGraphRendererOptions extends ezcGraphChartOptions
switch ( $propertyName )
{
case 'maxLabelHeight':
- $this->properties['maxLabelHeight'] = min( 1, max( 0, (float) $propertyValue ) );
+ $this->properties['maxLabelHeight'] = min( 1., max( .0, (float) $propertyValue ) );
break;
case 'symbolSize':
$this->properties['symbolSize'] = (int) $propertyValue;
break;
case 'moveOut':
- $this->properties['moveOut'] = min( 1, max( 0, (float) $propertyValue ) );
+ $this->properties['moveOut'] = min( 1., max( .0, (float) $propertyValue ) );
break;
case 'showSymbol':
$this->properties['showSymbol'] = (bool) $propertyValue;
@@ -119,13 +119,13 @@ class ezcGraphRendererOptions extends ezcGraphChartOptions
$this->properties['titleAlignement'] = (int) $propertyValue;
break;
case 'dataBorder':
- $this->properties['dataBorder'] = min( 1, max( 0, (float) $propertyValue ) );
+ $this->properties['dataBorder'] = min( 1., max( .0, (float) $propertyValue ) );
break;
case 'barMargin':
- $this->properties['barMargin'] = min( 1, max( 0, (float) $propertyValue ) );
+ $this->properties['barMargin'] = min( 1., max( .0, (float) $propertyValue ) );
break;
case 'barPadding':
- $this->properties['barPadding'] = min( 1, max( 0, (float) $propertyValue ) );
+ $this->properties['barPadding'] = min( 1., max( .0, (float) $propertyValue ) );
break;
case 'pieChartOffset':
$this->properties['pieChartOffset'] = $propertyValue % 360;
@@ -134,7 +134,7 @@ class ezcGraphRendererOptions extends ezcGraphChartOptions
$this->properties['pieChartSymbolColor'] = ezcGraphColor::create( $propertyValue );
break;
case 'pieChartGleam':
- $this->properties['pieChartGleam'] = min( 1, max( 0, (float) $propertyValue ) );
+ $this->properties['pieChartGleam'] = min( 1., max( .0, (float) $propertyValue ) );
break;
case 'pieChartGleamColor':
$this->properties['pieChartGleamColor'] = ezcGraphColor::create( $propertyValue );
@@ -143,19 +143,19 @@ class ezcGraphRendererOptions extends ezcGraphChartOptions
$this->properties['pieChartGleamBorder'] = max( 0, (int) $propertyValue );
break;
case 'legendSymbolGleam':
- $this->properties['legendSymbolGleam'] = min( 1, max( 0, (float) $propertyValue ) );
+ $this->properties['legendSymbolGleam'] = min( 1., max( .0, (float) $propertyValue ) );
break;
case 'legendSymbolGleamSize':
- $this->properties['legendSymbolGleamSize'] = min( 1, max( 0, (float) $propertyValue ) );
+ $this->properties['legendSymbolGleamSize'] = min( 1., max( .0, (float) $propertyValue ) );
break;
case 'legendSymbolGleamColor':
$this->properties['legendSymbolGleamColor'] = ezcGraphColor::create( $propertyValue );
break;
case 'pieVerticalSize':
- $this->properties['pieVerticalSize'] = min( 1, max( 0, (float) $propertyValue ) );
+ $this->properties['pieVerticalSize'] = min( 1., max( .0, (float) $propertyValue ) );
break;
case 'pieHorizontalSize':
- $this->properties['pieHorizontalSize'] = min( 1, max( 0, (float) $propertyValue ) );
+ $this->properties['pieHorizontalSize'] = min( 1., max( .0, (float) $propertyValue ) );
break;
default:
return parent::__set( $propertyName, $propertyValue );
diff --git a/src/options/renderer_3d.php b/src/options/renderer_3d.php
index 1f2c658..ceb1ab6 100644
--- a/src/options/renderer_3d.php
+++ b/src/options/renderer_3d.php
@@ -83,43 +83,43 @@ class ezcGraphRenderer3dOptions extends ezcGraphRendererOptions
switch ( $propertyName )
{
case 'depth':
- $this->properties['depth'] = min( 1, max( 0, (float) $propertyValue ) );
+ $this->properties['depth'] = min( 1., max( .0, (float) $propertyValue ) );
break;
case 'seperateLines':
$this->properties['seperateLines'] = (bool) $propertyValue;
break;
case 'fillAxis':
- $this->properties['fillAxis'] = min( 1, max( 0, (float) $propertyValue ) );
+ $this->properties['fillAxis'] = min( 1., max( .0, (float) $propertyValue ) );
break;
case 'fillGrid':
- $this->properties['fillGrid'] = min( 1, max( 0, (float) $propertyValue ) );
+ $this->properties['fillGrid'] = min( 1., max( .0, (float) $propertyValue ) );
break;
case 'dataBorder':
- $this->properties['dataBorder'] = min( 1, max( 0, (float) $propertyValue ) );
+ $this->properties['dataBorder'] = min( 1., max( .0, (float) $propertyValue ) );
break;
case 'pieChartHeight':
$this->properties['pieChartHeight'] = (float) $propertyValue;
break;
case 'pieChartRotation':
- $this->properties['pieChartRotation'] = min( 1, max( 0, (float) $propertyValue ) );
+ $this->properties['pieChartRotation'] = min( 1., max( .0, (float) $propertyValue ) );
break;
case 'pieChartShadowSize':
$this->properties['pieChartShadowSize'] = max( 0, (int) $propertyValue );
break;
case 'pieChartShadowTransparency':
- $this->properties['pieChartShadowTransparency'] = min( 1, max( 0, (float) $propertyValue ) );
+ $this->properties['pieChartShadowTransparency'] = min( 1., max( .0, (float) $propertyValue ) );
break;
case 'pieChartShadowColor':
$this->properties['pieChartShadowColor'] = ezcGraphColor::create( $propertyValue );
break;
case 'barDarkenSide':
- $this->properties['barDarkenSide'] = min( 1, max( 0, (float) $propertyValue ) );
+ $this->properties['barDarkenSide'] = min( 1., max( .0, (float) $propertyValue ) );
break;
case 'barDarkenTop':
- $this->properties['barDarkenTop'] = min( 1, max( 0, (float) $propertyValue ) );
+ $this->properties['barDarkenTop'] = min( 1., max( .0, (float) $propertyValue ) );
break;
case 'barChartGleam':
- $this->properties['barChartGleam'] = min( 1, max( 0, (float) $propertyValue ) );
+ $this->properties['barChartGleam'] = min( 1., max( .0, (float) $propertyValue ) );
break;
default:
return parent::__set( $propertyName, $propertyValue );
diff --git a/tests/data/compare/ezcGraphLegendTest_testBottomLegend.svg b/tests/data/compare/ezcGraphLegendTest_testBottomLegend.svg
index 8fd00a4..0f096c3 100644
--- a/tests/data/compare/ezcGraphLegendTest_testBottomLegend.svg
+++ b/tests/data/compare/ezcGraphLegendTest_testBottomLegend.svg
@@ -1,2 +1,2 @@
<?xml version="1.0"?>
-<svg xmlns="http://www.w3.org/2000/svg" width="500" height="200" version="1.0" id="ezcGraph"><defs/><g id="ezcGraphChart" color-rendering="optimizeQuality" shape-rendering="geometricPrecision" text-rendering="optimizeLegibility"><path d=" M 0.0000,200.0000 L 0.0000,0.0000 L 500.0000,0.0000 L 500.0000,200.0000 L 0.0000,200.0000 z " style="fill: #eeeeec; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_1"/><path d=" M 0.0000,200.0000 L 0.0000,180.0000 L 500.0000,180.0000 L 500.0000,200.0000 L 0.0000,200.0000 z " style="fill: #000000; fill-opacity: 0.00; stroke: none;" id="ezcGraphPolygon_2"/><path d=" M 3.0000,197.0000 L 3.0000,183.0000 L 17.0000,183.0000 L 17.0000,197.0000 L 3.0000,197.0000 z " style="fill: #4e9a06; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_3"/><path d=" M 102.6000,197.0000 L 102.6000,183.0000 L 116.6000,183.0000 L 116.6000,197.0000 L 102.6000,197.0000 z " style="fill: #cc0000; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_5"/><path d=" M 202.2000,197.0000 L 202.2000,183.0000 L 216.2000,183.0000 L 216.2000,197.0000 L 202.2000,197.0000 z " style="fill: #edd400; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_7"/><path d=" M 301.8000,197.0000 L 301.8000,183.0000 L 315.8000,183.0000 L 315.8000,197.0000 L 301.8000,197.0000 z " style="fill: #75505b; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_9"/><path d=" M 401.4000,197.0000 L 401.4000,183.0000 L 415.4000,183.0000 L 415.4000,197.0000 L 401.4000,197.0000 z " style="fill: #f57900; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_11"/><path d="M 250.00,90.00 L 331.00,90.00 A 81.00,81.00 0 1,1 188.43,37.37 z" style="fill: #4e9a06; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircleSector_13"/><path d="M 250.00,90.00 L 331.00,90.00 A 81.00,81.00 0 1,1 188.43,37.37 z" style="fill: none; stroke: #274d03; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphCircleSector_14"/><path d="M 250.00,90.00 L 188.43,37.37 A 81.00,81.00 0 0,1 206.98,21.37 z" style="fill: #cc0000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircleSector_15"/><path d="M 250.00,90.00 L 188.43,37.37 A 81.00,81.00 0 0,1 206.98,21.37 z" style="fill: none; stroke: #660000; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphCircleSector_16"/><path d="M 250.00,90.00 L 206.98,21.37 A 81.00,81.00 0 0,1 288.78,18.89 z" style="fill: #edd400; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircleSector_17"/><path d="M 250.00,90.00 L 206.98,21.37 A 81.00,81.00 0 0,1 288.78,18.89 z" style="fill: none; stroke: #776a00; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphCircleSector_18"/><path d="M 250.00,90.00 L 288.78,18.89 A 81.00,81.00 0 0,1 302.34,28.18 z" style="fill: #75505b; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircleSector_19"/><path d="M 250.00,90.00 L 288.78,18.89 A 81.00,81.00 0 0,1 302.34,28.18 z" style="fill: none; stroke: #3b282e; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphCircleSector_20"/><path d="M 250.00,90.00 L 302.34,28.18 A 81.00,81.00 0 0,1 331.00,90.00 z" style="fill: #f57900; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircleSector_21"/><path d="M 250.00,90.00 L 302.34,28.18 A 81.00,81.00 0 0,1 331.00,90.00 z" style="fill: none; stroke: #7b3d00; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphCircleSector_22"/><path d=" M 248.1792,30.0276 L 204.7699,9.0000" style="fill: none; stroke: #000000; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_23"/><ellipse cx="248.17919395494" cy="30.027634152501" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_24"/><ellipse cx="204.76990950813" cy="9" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_25"/><path d=" M 210.8118,44.5656 L 179.7271,27.0000" style="fill: none; stroke: #000000; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_27"/><ellipse cx="210.81181529129" cy="44.565583758172" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_28"/><ellipse cx="179.72714414311" cy="27" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_29"/><path d=" M 229.2200,146.2867 L 204.7699,171.0000" style="fill: none; stroke: #000000; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_31"/><ellipse cx="229.21997746908" cy="146.28668282653" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_32"/><ellipse cx="204.76990950813" cy="171" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_33"/><path d=" M 283.9216,40.5094 L 305.7494,15.0000" style="fill: none; stroke: #000000; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_35"/><ellipse cx="283.92163212695" cy="40.509365796709" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_36"/><ellipse cx="305.74937185533" cy="15" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_37"/><path d=" M 304.4335,64.7612 L 337.5843,52.0000" style="fill: none; stroke: #000000; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_39"/><ellipse cx="304.43348875685" cy="64.761234147486" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_40"/><ellipse cx="337.58431221748" cy="52" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_41"/><text id="ezcGraphTextBox_4" x="19" text-length="51.94px" y="194.9" style="font-size: 14px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">Mozilla</text><text id="ezcGraphTextBox_6" x="118.6" text-length="14.84px" y="194.9" style="font-size: 14px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">IE</text><text id="ezcGraphTextBox_8" x="218.2" text-length="37.1px" y="194.9" style="font-size: 14px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">Opera</text><text id="ezcGraphTextBox_10" x="317.8" text-length="29.68px" y="194.9" style="font-size: 14px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">wget</text><text id="ezcGraphTextBox_12" x="417.4" text-length="44.52px" y="194.9" style="font-size: 14px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">Safari</text><text id="ezcGraphTextBox_26" x="47.719909508134" text-length="151.05px" y="14.25" style="font-size: 15px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">Opera: 1204 (16.9%)</text><text id="ezcGraphTextBox_30" x="62.427144143114" text-length="111.3px" y="32.25" style="font-size: 15px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">IE: 345 (4.8%)</text><text id="ezcGraphTextBox_34" x="31.819909508134" text-length="166.95px" y="176.25" style="font-size: 15px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">Mozilla: 4375 (61.3%)</text><text id="ezcGraphTextBox_38" x="311.74937185533" text-length="127.2px" y="20.25" style="font-size: 15px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">wget: 231 (3.2%)</text><text id="ezcGraphTextBox_42" x="343.58431221748" text-length="151.05px" y="57.25" style="font-size: 15px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">Safari: 987 (13.8%)</text></g></svg>
+<svg xmlns="http://www.w3.org/2000/svg" width="500" height="200" version="1.0" id="ezcGraph"><defs/><g id="ezcGraphChart" color-rendering="optimizeQuality" shape-rendering="geometricPrecision" text-rendering="optimizeLegibility"><path d=" M 0.0000,200.0000 L 0.0000,0.0000 L 500.0000,0.0000 L 500.0000,200.0000 L 0.0000,200.0000 z " style="fill: #eeeeec; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_1"/><path d=" M 0.0000,200.0000 L 0.0000,180.0000 L 500.0000,180.0000 L 500.0000,200.0000 L 0.0000,200.0000 z " style="fill: #000000; fill-opacity: 0.00; stroke: none;" id="ezcGraphPolygon_2"/><path d=" M 4.0000,196.0000 L 4.0000,184.0000 L 16.0000,184.0000 L 16.0000,196.0000 L 4.0000,196.0000 z " style="fill: #4e9a06; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_3"/><path d=" M 103.2000,196.0000 L 103.2000,184.0000 L 115.2000,184.0000 L 115.2000,196.0000 L 103.2000,196.0000 z " style="fill: #cc0000; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_5"/><path d=" M 202.4000,196.0000 L 202.4000,184.0000 L 214.4000,184.0000 L 214.4000,196.0000 L 202.4000,196.0000 z " style="fill: #edd400; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_7"/><path d=" M 301.6000,196.0000 L 301.6000,184.0000 L 313.6000,184.0000 L 313.6000,196.0000 L 301.6000,196.0000 z " style="fill: #75505b; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_9"/><path d=" M 400.8000,196.0000 L 400.8000,184.0000 L 412.8000,184.0000 L 412.8000,196.0000 L 400.8000,196.0000 z " style="fill: #f57900; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_11"/><path d="M 250.00,90.00 L 331.00,90.00 A 81.00,81.00 0 1,1 188.43,37.37 z" style="fill: #4e9a06; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircleSector_13"/><path d="M 250.00,90.00 L 331.00,90.00 A 81.00,81.00 0 1,1 188.43,37.37 z" style="fill: none; stroke: #274d03; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphCircleSector_14"/><path d="M 250.00,90.00 L 188.43,37.37 A 81.00,81.00 0 0,1 206.98,21.37 z" style="fill: #cc0000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircleSector_15"/><path d="M 250.00,90.00 L 188.43,37.37 A 81.00,81.00 0 0,1 206.98,21.37 z" style="fill: none; stroke: #660000; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphCircleSector_16"/><path d="M 250.00,90.00 L 206.98,21.37 A 81.00,81.00 0 0,1 288.78,18.89 z" style="fill: #edd400; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircleSector_17"/><path d="M 250.00,90.00 L 206.98,21.37 A 81.00,81.00 0 0,1 288.78,18.89 z" style="fill: none; stroke: #776a00; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphCircleSector_18"/><path d="M 250.00,90.00 L 288.78,18.89 A 81.00,81.00 0 0,1 302.34,28.18 z" style="fill: #75505b; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircleSector_19"/><path d="M 250.00,90.00 L 288.78,18.89 A 81.00,81.00 0 0,1 302.34,28.18 z" style="fill: none; stroke: #3b282e; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphCircleSector_20"/><path d="M 250.00,90.00 L 302.34,28.18 A 81.00,81.00 0 0,1 331.00,90.00 z" style="fill: #f57900; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircleSector_21"/><path d="M 250.00,90.00 L 302.34,28.18 A 81.00,81.00 0 0,1 331.00,90.00 z" style="fill: none; stroke: #7b3d00; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphCircleSector_22"/><path d=" M 248.1792,30.0276 L 204.7699,9.0000" style="fill: none; stroke: #000000; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_23"/><ellipse cx="248.17919395494" cy="30.027634152501" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_24"/><ellipse cx="204.76990950813" cy="9" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_25"/><path d=" M 210.8118,44.5656 L 179.7271,27.0000" style="fill: none; stroke: #000000; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_27"/><ellipse cx="210.81181529129" cy="44.565583758172" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_28"/><ellipse cx="179.72714414311" cy="27" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_29"/><path d=" M 229.2200,146.2867 L 204.7699,171.0000" style="fill: none; stroke: #000000; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_31"/><ellipse cx="229.21997746908" cy="146.28668282653" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_32"/><ellipse cx="204.76990950813" cy="171" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_33"/><path d=" M 283.9216,40.5094 L 305.7494,15.0000" style="fill: none; stroke: #000000; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_35"/><ellipse cx="283.92163212695" cy="40.509365796709" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_36"/><ellipse cx="305.74937185533" cy="15" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_37"/><path d=" M 304.4335,64.7612 L 337.5843,52.0000" style="fill: none; stroke: #000000; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_39"/><ellipse cx="304.43348875685" cy="64.761234147486" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_40"/><ellipse cx="337.58431221748" cy="52" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_41"/><text id="ezcGraphTextBox_4" x="18" text-length="44.52px" y="194.2" style="font-size: 12px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">Mozilla</text><text id="ezcGraphTextBox_6" x="117.2" text-length="12.72px" y="194.2" style="font-size: 12px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">IE</text><text id="ezcGraphTextBox_8" x="216.4" text-length="31.8px" y="194.2" style="font-size: 12px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">Opera</text><text id="ezcGraphTextBox_10" x="315.6" text-length="25.44px" y="194.2" style="font-size: 12px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">wget</text><text id="ezcGraphTextBox_12" x="414.8" text-length="38.16px" y="194.2" style="font-size: 12px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">Safari</text><text id="ezcGraphTextBox_26" x="47.719909508134" text-length="151.05px" y="14.25" style="font-size: 15px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">Opera: 1204 (16.9%)</text><text id="ezcGraphTextBox_30" x="62.427144143114" text-length="111.3px" y="32.25" style="font-size: 15px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">IE: 345 (4.8%)</text><text id="ezcGraphTextBox_34" x="31.819909508134" text-length="166.95px" y="176.25" style="font-size: 15px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">Mozilla: 4375 (61.3%)</text><text id="ezcGraphTextBox_38" x="311.74937185533" text-length="127.2px" y="20.25" style="font-size: 15px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">wget: 231 (3.2%)</text><text id="ezcGraphTextBox_42" x="343.58431221748" text-length="151.05px" y="57.25" style="font-size: 15px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">Safari: 987 (13.8%)</text></g></svg>
diff --git a/tests/data/compare/ezcGraphLegendTest_testLeftLegend.svg b/tests/data/compare/ezcGraphLegendTest_testLeftLegend.svg
index f23d3ee..31ffaf1 100644
--- a/tests/data/compare/ezcGraphLegendTest_testLeftLegend.svg
+++ b/tests/data/compare/ezcGraphLegendTest_testLeftLegend.svg
@@ -1,2 +1,2 @@
<?xml version="1.0"?>
-<svg xmlns="http://www.w3.org/2000/svg" width="500" height="200" version="1.0" id="ezcGraph"><defs/><g id="ezcGraphChart" color-rendering="optimizeQuality" shape-rendering="geometricPrecision" text-rendering="optimizeLegibility"><path d=" M 0.0000,200.0000 L 0.0000,0.0000 L 500.0000,0.0000 L 500.0000,200.0000 L 0.0000,200.0000 z " style="fill: #eeeeec; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_1"/><path d=" M 0.0000,200.0000 L 0.0000,0.0000 L 100.0000,0.0000 L 100.0000,200.0000 L 0.0000,200.0000 z " style="fill: #000000; fill-opacity: 0.00; stroke: none;" id="ezcGraphPolygon_2"/><path d=" M 3.0000,17.0000 L 3.0000,3.0000 L 17.0000,3.0000 L 17.0000,17.0000 L 3.0000,17.0000 z " style="fill: #4e9a06; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_3"/><path d=" M 3.0000,37.0000 L 3.0000,23.0000 L 17.0000,23.0000 L 17.0000,37.0000 L 3.0000,37.0000 z " style="fill: #cc0000; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_5"/><path d=" M 3.0000,57.0000 L 3.0000,43.0000 L 17.0000,43.0000 L 17.0000,57.0000 L 3.0000,57.0000 z " style="fill: #edd400; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_7"/><path d=" M 3.0000,77.0000 L 3.0000,63.0000 L 17.0000,63.0000 L 17.0000,77.0000 L 3.0000,77.0000 z " style="fill: #75505b; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_9"/><path d=" M 3.0000,97.0000 L 3.0000,83.0000 L 17.0000,83.0000 L 17.0000,97.0000 L 3.0000,97.0000 z " style="fill: #f57900; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_11"/><path d="M 300.00,100.00 L 390.00,100.00 A 90.00,90.00 0 1,1 231.59,41.52 z" style="fill: #4e9a06; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircleSector_13"/><path d="M 300.00,100.00 L 390.00,100.00 A 90.00,90.00 0 1,1 231.59,41.52 z" style="fill: none; stroke: #274d03; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphCircleSector_14"/><path d="M 300.00,100.00 L 231.59,41.52 A 90.00,90.00 0 0,1 252.20,23.75 z" style="fill: #cc0000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircleSector_15"/><path d="M 300.00,100.00 L 231.59,41.52 A 90.00,90.00 0 0,1 252.20,23.75 z" style="fill: none; stroke: #660000; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphCircleSector_16"/><path d="M 300.00,100.00 L 252.20,23.75 A 90.00,90.00 0 0,1 343.09,20.99 z" style="fill: #edd400; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircleSector_17"/><path d="M 300.00,100.00 L 252.20,23.75 A 90.00,90.00 0 0,1 343.09,20.99 z" style="fill: none; stroke: #776a00; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphCircleSector_18"/><path d="M 300.00,100.00 L 343.09,20.99 A 90.00,90.00 0 0,1 358.15,31.31 z" style="fill: #75505b; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircleSector_19"/><path d="M 300.00,100.00 L 343.09,20.99 A 90.00,90.00 0 0,1 358.15,31.31 z" style="fill: none; stroke: #3b282e; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphCircleSector_20"/><path d="M 300.00,100.00 L 358.15,31.31 A 90.00,90.00 0 0,1 390.00,100.00 z" style="fill: #f57900; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircleSector_21"/><path d="M 300.00,100.00 L 358.15,31.31 A 90.00,90.00 0 0,1 390.00,100.00 z" style="fill: none; stroke: #7b3d00; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphCircleSector_22"/><path d=" M 297.9769,33.3640 L 250.4110,10.0000" style="fill: none; stroke: #000000; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_23"/><ellipse cx="297.97688217216" cy="33.364037947223" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_24"/><ellipse cx="250.41101056459" cy="10" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_25"/><path d=" M 256.4576,49.5173 L 222.5857,30.0000" style="fill: none; stroke: #000000; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_27"/><ellipse cx="256.45757254587" cy="49.517315286858" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_28"/><ellipse cx="222.58571571457" cy="30" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_29"/><path d=" M 276.9111,162.5408 L 250.4110,190.0000" style="fill: none; stroke: #000000; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_31"/><ellipse cx="276.91108607676" cy="162.54075869615" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_32"/><ellipse cx="250.41101056459" cy="190" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_33"/><path d=" M 337.6907,45.0104 L 361.7763,17.0000" style="fill: none; stroke: #000000; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_35"/><ellipse cx="337.69070236328" cy="45.010406440788" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_36"/><ellipse cx="361.77633906954" cy="17" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_37"/><path d=" M 360.4817,71.9569 L 396.2829,57.0000" style="fill: none; stroke: #000000; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_39"/><ellipse cx="360.48165417428" cy="71.95692683054" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_40"/><ellipse cx="396.28288874421" cy="57" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_41"/><text id="ezcGraphTextBox_4" x="19" text-length="51.94px" y="14.9" style="font-size: 14px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">Mozilla</text><text id="ezcGraphTextBox_6" x="19" text-length="14.84px" y="34.9" style="font-size: 14px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">IE</text><text id="ezcGraphTextBox_8" x="19" text-length="37.1px" y="54.9" style="font-size: 14px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">Opera</text><text id="ezcGraphTextBox_10" x="19" text-length="29.68px" y="74.9" style="font-size: 14px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">wget</text><text id="ezcGraphTextBox_12" x="19" text-length="44.52px" y="94.9" style="font-size: 14px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">Safari</text><text id="ezcGraphTextBox_26" x="153.78101056459" text-length="90.63px" y="13.15" style="font-size: 9px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">Opera: 1204 (16.9%)</text><text id="ezcGraphTextBox_30" x="149.80571571457" text-length="66.78px" y="33.15" style="font-size: 9px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">IE: 345 (4.8%)</text><text id="ezcGraphTextBox_34" x="144.24101056459" text-length="100.17px" y="193.15" style="font-size: 9px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">Mozilla: 4375 (61.3%)</text><text id="ezcGraphTextBox_38" x="367.77633906954" text-length="76.32px" y="20.15" style="font-size: 9px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">wget: 231 (3.2%)</text><text id="ezcGraphTextBox_42" x="402.28288874421" text-length="90.63px" y="60.15" style="font-size: 9px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">Safari: 987 (13.8%)</text></g></svg>
+<svg xmlns="http://www.w3.org/2000/svg" width="500" height="200" version="1.0" id="ezcGraph"><defs/><g id="ezcGraphChart" color-rendering="optimizeQuality" shape-rendering="geometricPrecision" text-rendering="optimizeLegibility"><path d=" M 0.0000,200.0000 L 0.0000,0.0000 L 500.0000,0.0000 L 500.0000,200.0000 L 0.0000,200.0000 z " style="fill: #eeeeec; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_1"/><path d=" M 0.0000,200.0000 L 0.0000,0.0000 L 100.0000,0.0000 L 100.0000,200.0000 L 0.0000,200.0000 z " style="fill: #000000; fill-opacity: 0.00; stroke: none;" id="ezcGraphPolygon_2"/><path d=" M 4.0000,18.0000 L 4.0000,4.0000 L 18.0000,4.0000 L 18.0000,18.0000 L 4.0000,18.0000 z " style="fill: #4e9a06; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_3"/><path d=" M 4.0000,38.0000 L 4.0000,24.0000 L 18.0000,24.0000 L 18.0000,38.0000 L 4.0000,38.0000 z " style="fill: #cc0000; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_5"/><path d=" M 4.0000,58.0000 L 4.0000,44.0000 L 18.0000,44.0000 L 18.0000,58.0000 L 4.0000,58.0000 z " style="fill: #edd400; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_7"/><path d=" M 4.0000,78.0000 L 4.0000,64.0000 L 18.0000,64.0000 L 18.0000,78.0000 L 4.0000,78.0000 z " style="fill: #75505b; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_9"/><path d=" M 4.0000,98.0000 L 4.0000,84.0000 L 18.0000,84.0000 L 18.0000,98.0000 L 4.0000,98.0000 z " style="fill: #f57900; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_11"/><path d="M 300.00,100.00 L 390.00,100.00 A 90.00,90.00 0 1,1 231.59,41.52 z" style="fill: #4e9a06; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircleSector_13"/><path d="M 300.00,100.00 L 390.00,100.00 A 90.00,90.00 0 1,1 231.59,41.52 z" style="fill: none; stroke: #274d03; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphCircleSector_14"/><path d="M 300.00,100.00 L 231.59,41.52 A 90.00,90.00 0 0,1 252.20,23.75 z" style="fill: #cc0000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircleSector_15"/><path d="M 300.00,100.00 L 231.59,41.52 A 90.00,90.00 0 0,1 252.20,23.75 z" style="fill: none; stroke: #660000; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphCircleSector_16"/><path d="M 300.00,100.00 L 252.20,23.75 A 90.00,90.00 0 0,1 343.09,20.99 z" style="fill: #edd400; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircleSector_17"/><path d="M 300.00,100.00 L 252.20,23.75 A 90.00,90.00 0 0,1 343.09,20.99 z" style="fill: none; stroke: #776a00; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphCircleSector_18"/><path d="M 300.00,100.00 L 343.09,20.99 A 90.00,90.00 0 0,1 358.15,31.31 z" style="fill: #75505b; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircleSector_19"/><path d="M 300.00,100.00 L 343.09,20.99 A 90.00,90.00 0 0,1 358.15,31.31 z" style="fill: none; stroke: #3b282e; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphCircleSector_20"/><path d="M 300.00,100.00 L 358.15,31.31 A 90.00,90.00 0 0,1 390.00,100.00 z" style="fill: #f57900; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircleSector_21"/><path d="M 300.00,100.00 L 358.15,31.31 A 90.00,90.00 0 0,1 390.00,100.00 z" style="fill: none; stroke: #7b3d00; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphCircleSector_22"/><path d=" M 297.9769,33.3640 L 250.4110,10.0000" style="fill: none; stroke: #000000; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_23"/><ellipse cx="297.97688217216" cy="33.364037947223" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_24"/><ellipse cx="250.41101056459" cy="10" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_25"/><path d=" M 256.4576,49.5173 L 222.5857,30.0000" style="fill: none; stroke: #000000; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_27"/><ellipse cx="256.45757254587" cy="49.517315286858" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_28"/><ellipse cx="222.58571571457" cy="30" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_29"/><path d=" M 276.9111,162.5408 L 250.4110,190.0000" style="fill: none; stroke: #000000; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_31"/><ellipse cx="276.91108607676" cy="162.54075869615" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_32"/><ellipse cx="250.41101056459" cy="190" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_33"/><path d=" M 337.6907,45.0104 L 361.7763,17.0000" style="fill: none; stroke: #000000; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_35"/><ellipse cx="337.69070236328" cy="45.010406440788" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_36"/><ellipse cx="361.77633906954" cy="17" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_37"/><path d=" M 360.4817,71.9569 L 396.2829,57.0000" style="fill: none; stroke: #000000; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_39"/><ellipse cx="360.48165417428" cy="71.95692683054" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_40"/><ellipse cx="396.28288874421" cy="57" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_41"/><text id="ezcGraphTextBox_4" x="20" text-length="51.94px" y="15.9" style="font-size: 14px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">Mozilla</text><text id="ezcGraphTextBox_6" x="20" text-length="14.84px" y="35.9" style="font-size: 14px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">IE</text><text id="ezcGraphTextBox_8" x="20" text-length="37.1px" y="55.9" style="font-size: 14px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">Opera</text><text id="ezcGraphTextBox_10" x="20" text-length="29.68px" y="75.9" style="font-size: 14px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">wget</text><text id="ezcGraphTextBox_12" x="20" text-length="44.52px" y="95.9" style="font-size: 14px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">Safari</text><text id="ezcGraphTextBox_26" x="153.78101056459" text-length="90.63px" y="13.15" style="font-size: 9px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">Opera: 1204 (16.9%)</text><text id="ezcGraphTextBox_30" x="149.80571571457" text-length="66.78px" y="33.15" style="font-size: 9px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">IE: 345 (4.8%)</text><text id="ezcGraphTextBox_34" x="144.24101056459" text-length="100.17px" y="193.15" style="font-size: 9px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">Mozilla: 4375 (61.3%)</text><text id="ezcGraphTextBox_38" x="367.77633906954" text-length="76.32px" y="20.15" style="font-size: 9px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">wget: 231 (3.2%)</text><text id="ezcGraphTextBox_42" x="402.28288874421" text-length="90.63px" y="60.15" style="font-size: 9px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">Safari: 987 (13.8%)</text></g></svg>
diff --git a/tests/data/compare/ezcGraphLegendTest_testRightLegend.svg b/tests/data/compare/ezcGraphLegendTest_testRightLegend.svg
index 58de377..92b39e5 100644
--- a/tests/data/compare/ezcGraphLegendTest_testRightLegend.svg
+++ b/tests/data/compare/ezcGraphLegendTest_testRightLegend.svg
@@ -1,2 +1,2 @@
<?xml version="1.0"?>
-<svg xmlns="http://www.w3.org/2000/svg" width="500" height="200" version="1.0" id="ezcGraph"><defs/><g id="ezcGraphChart" color-rendering="optimizeQuality" shape-rendering="geometricPrecision" text-rendering="optimizeLegibility"><path d=" M 0.0000,200.0000 L 0.0000,0.0000 L 500.0000,0.0000 L 500.0000,200.0000 L 0.0000,200.0000 z " style="fill: #eeeeec; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_1"/><path d=" M 400.0000,200.0000 L 400.0000,0.0000 L 500.0000,0.0000 L 500.0000,200.0000 L 400.0000,200.0000 z " style="fill: #000000; fill-opacity: 0.00; stroke: none;" id="ezcGraphPolygon_2"/><path d=" M 403.0000,17.0000 L 403.0000,3.0000 L 417.0000,3.0000 L 417.0000,17.0000 L 403.0000,17.0000 z " style="fill: #4e9a06; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_3"/><path d=" M 403.0000,37.0000 L 403.0000,23.0000 L 417.0000,23.0000 L 417.0000,37.0000 L 403.0000,37.0000 z " style="fill: #cc0000; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_5"/><path d=" M 403.0000,57.0000 L 403.0000,43.0000 L 417.0000,43.0000 L 417.0000,57.0000 L 403.0000,57.0000 z " style="fill: #edd400; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_7"/><path d=" M 403.0000,77.0000 L 403.0000,63.0000 L 417.0000,63.0000 L 417.0000,77.0000 L 403.0000,77.0000 z " style="fill: #75505b; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_9"/><path d=" M 403.0000,97.0000 L 403.0000,83.0000 L 417.0000,83.0000 L 417.0000,97.0000 L 403.0000,97.0000 z " style="fill: #f57900; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_11"/><path d="M 200.00,100.00 L 290.00,100.00 A 90.00,90.00 0 1,1 131.59,41.52 z" style="fill: #4e9a06; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircleSector_13"/><path d="M 200.00,100.00 L 290.00,100.00 A 90.00,90.00 0 1,1 131.59,41.52 z" style="fill: none; stroke: #274d03; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphCircleSector_14"/><path d="M 200.00,100.00 L 131.59,41.52 A 90.00,90.00 0 0,1 152.20,23.75 z" style="fill: #cc0000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircleSector_15"/><path d="M 200.00,100.00 L 131.59,41.52 A 90.00,90.00 0 0,1 152.20,23.75 z" style="fill: none; stroke: #660000; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphCircleSector_16"/><path d="M 200.00,100.00 L 152.20,23.75 A 90.00,90.00 0 0,1 243.09,20.99 z" style="fill: #edd400; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircleSector_17"/><path d="M 200.00,100.00 L 152.20,23.75 A 90.00,90.00 0 0,1 243.09,20.99 z" style="fill: none; stroke: #776a00; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphCircleSector_18"/><path d="M 200.00,100.00 L 243.09,20.99 A 90.00,90.00 0 0,1 258.15,31.31 z" style="fill: #75505b; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircleSector_19"/><path d="M 200.00,100.00 L 243.09,20.99 A 90.00,90.00 0 0,1 258.15,31.31 z" style="fill: none; stroke: #3b282e; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphCircleSector_20"/><path d="M 200.00,100.00 L 258.15,31.31 A 90.00,90.00 0 0,1 290.00,100.00 z" style="fill: #f57900; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircleSector_21"/><path d="M 200.00,100.00 L 258.15,31.31 A 90.00,90.00 0 0,1 290.00,100.00 z" style="fill: none; stroke: #7b3d00; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphCircleSector_22"/><path d=" M 197.9769,33.3640 L 150.4110,10.0000" style="fill: none; stroke: #000000; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_23"/><ellipse cx="197.97688217216" cy="33.364037947223" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_24"/><ellipse cx="150.41101056459" cy="10" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_25"/><path d=" M 156.4576,49.5173 L 122.5857,30.0000" style="fill: none; stroke: #000000; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_27"/><ellipse cx="156.45757254587" cy="49.517315286858" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_28"/><ellipse cx="122.58571571457" cy="30" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_29"/><path d=" M 176.9111,162.5408 L 150.4110,190.0000" style="fill: none; stroke: #000000; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_31"/><ellipse cx="176.91108607676" cy="162.54075869615" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_32"/><ellipse cx="150.41101056459" cy="190" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_33"/><path d=" M 237.6907,45.0104 L 261.7763,17.0000" style="fill: none; stroke: #000000; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_35"/><ellipse cx="237.69070236328" cy="45.010406440788" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_36"/><ellipse cx="261.77633906954" cy="17" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_37"/><path d=" M 260.4817,71.9569 L 296.2829,57.0000" style="fill: none; stroke: #000000; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_39"/><ellipse cx="260.48165417428" cy="71.95692683054" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_40"/><ellipse cx="296.28288874421" cy="57" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_41"/><text id="ezcGraphTextBox_4" x="419" text-length="51.94px" y="14.9" style="font-size: 14px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">Mozilla</text><text id="ezcGraphTextBox_6" x="419" text-length="14.84px" y="34.9" style="font-size: 14px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">IE</text><text id="ezcGraphTextBox_8" x="419" text-length="37.1px" y="54.9" style="font-size: 14px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">Opera</text><text id="ezcGraphTextBox_10" x="419" text-length="29.68px" y="74.9" style="font-size: 14px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">wget</text><text id="ezcGraphTextBox_12" x="419" text-length="44.52px" y="94.9" style="font-size: 14px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">Safari</text><text id="ezcGraphTextBox_26" x="53.781010564593" text-length="90.63px" y="13.15" style="font-size: 9px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">Opera: 1204 (16.9%)</text><text id="ezcGraphTextBox_30" x="49.805715714571" text-length="66.78px" y="33.15" style="font-size: 9px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">IE: 345 (4.8%)</text><text id="ezcGraphTextBox_34" x="44.241010564593" text-length="100.17px" y="193.15" style="font-size: 9px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">Mozilla: 4375 (61.3%)</text><text id="ezcGraphTextBox_38" x="267.77633906954" text-length="76.32px" y="20.15" style="font-size: 9px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">wget: 231 (3.2%)</text><text id="ezcGraphTextBox_42" x="302.28288874421" text-length="90.63px" y="60.15" style="font-size: 9px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">Safari: 987 (13.8%)</text></g></svg>
+<svg xmlns="http://www.w3.org/2000/svg" width="500" height="200" version="1.0" id="ezcGraph"><defs/><g id="ezcGraphChart" color-rendering="optimizeQuality" shape-rendering="geometricPrecision" text-rendering="optimizeLegibility"><path d=" M 0.0000,200.0000 L 0.0000,0.0000 L 500.0000,0.0000 L 500.0000,200.0000 L 0.0000,200.0000 z " style="fill: #eeeeec; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_1"/><path d=" M 400.0000,200.0000 L 400.0000,0.0000 L 500.0000,0.0000 L 500.0000,200.0000 L 400.0000,200.0000 z " style="fill: #000000; fill-opacity: 0.00; stroke: none;" id="ezcGraphPolygon_2"/><path d=" M 404.0000,18.0000 L 404.0000,4.0000 L 418.0000,4.0000 L 418.0000,18.0000 L 404.0000,18.0000 z " style="fill: #4e9a06; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_3"/><path d=" M 404.0000,38.0000 L 404.0000,24.0000 L 418.0000,24.0000 L 418.0000,38.0000 L 404.0000,38.0000 z " style="fill: #cc0000; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_5"/><path d=" M 404.0000,58.0000 L 404.0000,44.0000 L 418.0000,44.0000 L 418.0000,58.0000 L 404.0000,58.0000 z " style="fill: #edd400; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_7"/><path d=" M 404.0000,78.0000 L 404.0000,64.0000 L 418.0000,64.0000 L 418.0000,78.0000 L 404.0000,78.0000 z " style="fill: #75505b; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_9"/><path d=" M 404.0000,98.0000 L 404.0000,84.0000 L 418.0000,84.0000 L 418.0000,98.0000 L 404.0000,98.0000 z " style="fill: #f57900; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_11"/><path d="M 200.00,100.00 L 290.00,100.00 A 90.00,90.00 0 1,1 131.59,41.52 z" style="fill: #4e9a06; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircleSector_13"/><path d="M 200.00,100.00 L 290.00,100.00 A 90.00,90.00 0 1,1 131.59,41.52 z" style="fill: none; stroke: #274d03; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphCircleSector_14"/><path d="M 200.00,100.00 L 131.59,41.52 A 90.00,90.00 0 0,1 152.20,23.75 z" style="fill: #cc0000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircleSector_15"/><path d="M 200.00,100.00 L 131.59,41.52 A 90.00,90.00 0 0,1 152.20,23.75 z" style="fill: none; stroke: #660000; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphCircleSector_16"/><path d="M 200.00,100.00 L 152.20,23.75 A 90.00,90.00 0 0,1 243.09,20.99 z" style="fill: #edd400; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircleSector_17"/><path d="M 200.00,100.00 L 152.20,23.75 A 90.00,90.00 0 0,1 243.09,20.99 z" style="fill: none; stroke: #776a00; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphCircleSector_18"/><path d="M 200.00,100.00 L 243.09,20.99 A 90.00,90.00 0 0,1 258.15,31.31 z" style="fill: #75505b; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircleSector_19"/><path d="M 200.00,100.00 L 243.09,20.99 A 90.00,90.00 0 0,1 258.15,31.31 z" style="fill: none; stroke: #3b282e; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphCircleSector_20"/><path d="M 200.00,100.00 L 258.15,31.31 A 90.00,90.00 0 0,1 290.00,100.00 z" style="fill: #f57900; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircleSector_21"/><path d="M 200.00,100.00 L 258.15,31.31 A 90.00,90.00 0 0,1 290.00,100.00 z" style="fill: none; stroke: #7b3d00; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphCircleSector_22"/><path d=" M 197.9769,33.3640 L 150.4110,10.0000" style="fill: none; stroke: #000000; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_23"/><ellipse cx="197.97688217216" cy="33.364037947223" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_24"/><ellipse cx="150.41101056459" cy="10" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_25"/><path d=" M 156.4576,49.5173 L 122.5857,30.0000" style="fill: none; stroke: #000000; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_27"/><ellipse cx="156.45757254587" cy="49.517315286858" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_28"/><ellipse cx="122.58571571457" cy="30" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_29"/><path d=" M 176.9111,162.5408 L 150.4110,190.0000" style="fill: none; stroke: #000000; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_31"/><ellipse cx="176.91108607676" cy="162.54075869615" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_32"/><ellipse cx="150.41101056459" cy="190" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_33"/><path d=" M 237.6907,45.0104 L 261.7763,17.0000" style="fill: none; stroke: #000000; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_35"/><ellipse cx="237.69070236328" cy="45.010406440788" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_36"/><ellipse cx="261.77633906954" cy="17" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_37"/><path d=" M 260.4817,71.9569 L 296.2829,57.0000" style="fill: none; stroke: #000000; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_39"/><ellipse cx="260.48165417428" cy="71.95692683054" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_40"/><ellipse cx="296.28288874421" cy="57" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_41"/><text id="ezcGraphTextBox_4" x="420" text-length="51.94px" y="15.9" style="font-size: 14px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">Mozilla</text><text id="ezcGraphTextBox_6" x="420" text-length="14.84px" y="35.9" style="font-size: 14px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">IE</text><text id="ezcGraphTextBox_8" x="420" text-length="37.1px" y="55.9" style="font-size: 14px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">Opera</text><text id="ezcGraphTextBox_10" x="420" text-length="29.68px" y="75.9" style="font-size: 14px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">wget</text><text id="ezcGraphTextBox_12" x="420" text-length="44.52px" y="95.9" style="font-size: 14px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">Safari</text><text id="ezcGraphTextBox_26" x="53.781010564593" text-length="90.63px" y="13.15" style="font-size: 9px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">Opera: 1204 (16.9%)</text><text id="ezcGraphTextBox_30" x="49.805715714571" text-length="66.78px" y="33.15" style="font-size: 9px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">IE: 345 (4.8%)</text><text id="ezcGraphTextBox_34" x="44.241010564593" text-length="100.17px" y="193.15" style="font-size: 9px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">Mozilla: 4375 (61.3%)</text><text id="ezcGraphTextBox_38" x="267.77633906954" text-length="76.32px" y="20.15" style="font-size: 9px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">wget: 231 (3.2%)</text><text id="ezcGraphTextBox_42" x="302.28288874421" text-length="90.63px" y="60.15" style="font-size: 9px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">Safari: 987 (13.8%)</text></g></svg>
diff --git a/tests/data/compare/ezcGraphLegendTest_testTopLegend.svg b/tests/data/compare/ezcGraphLegendTest_testTopLegend.svg
index e2258b5..147e1a7 100644
--- a/tests/data/compare/ezcGraphLegendTest_testTopLegend.svg
+++ b/tests/data/compare/ezcGraphLegendTest_testTopLegend.svg
@@ -1,2 +1,2 @@
<?xml version="1.0"?>
-<svg xmlns="http://www.w3.org/2000/svg" width="500" height="200" version="1.0" id="ezcGraph"><defs/><g id="ezcGraphChart" color-rendering="optimizeQuality" shape-rendering="geometricPrecision" text-rendering="optimizeLegibility"><path d=" M 0.0000,200.0000 L 0.0000,0.0000 L 500.0000,0.0000 L 500.0000,200.0000 L 0.0000,200.0000 z " style="fill: #eeeeec; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_1"/><path d=" M 0.0000,20.0000 L 0.0000,0.0000 L 500.0000,0.0000 L 500.0000,20.0000 L 0.0000,20.0000 z " style="fill: #000000; fill-opacity: 0.00; stroke: none;" id="ezcGraphPolygon_2"/><path d=" M 3.0000,17.0000 L 3.0000,3.0000 L 17.0000,3.0000 L 17.0000,17.0000 L 3.0000,17.0000 z " style="fill: #4e9a06; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_3"/><path d=" M 102.6000,17.0000 L 102.6000,3.0000 L 116.6000,3.0000 L 116.6000,17.0000 L 102.6000,17.0000 z " style="fill: #cc0000; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_5"/><path d=" M 202.2000,17.0000 L 202.2000,3.0000 L 216.2000,3.0000 L 216.2000,17.0000 L 202.2000,17.0000 z " style="fill: #edd400; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_7"/><path d=" M 301.8000,17.0000 L 301.8000,3.0000 L 315.8000,3.0000 L 315.8000,17.0000 L 301.8000,17.0000 z " style="fill: #75505b; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_9"/><path d=" M 401.4000,17.0000 L 401.4000,3.0000 L 415.4000,3.0000 L 415.4000,17.0000 L 401.4000,17.0000 z " style="fill: #f57900; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_11"/><path d="M 250.00,110.00 L 331.00,110.00 A 81.00,81.00 0 1,1 188.43,57.37 z" style="fill: #4e9a06; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircleSector_13"/><path d="M 250.00,110.00 L 331.00,110.00 A 81.00,81.00 0 1,1 188.43,57.37 z" style="fill: none; stroke: #274d03; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphCircleSector_14"/><path d="M 250.00,110.00 L 188.43,57.37 A 81.00,81.00 0 0,1 206.98,41.37 z" style="fill: #cc0000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircleSector_15"/><path d="M 250.00,110.00 L 188.43,57.37 A 81.00,81.00 0 0,1 206.98,41.37 z" style="fill: none; stroke: #660000; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphCircleSector_16"/><path d="M 250.00,110.00 L 206.98,41.37 A 81.00,81.00 0 0,1 288.78,38.89 z" style="fill: #edd400; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircleSector_17"/><path d="M 250.00,110.00 L 206.98,41.37 A 81.00,81.00 0 0,1 288.78,38.89 z" style="fill: none; stroke: #776a00; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphCircleSector_18"/><path d="M 250.00,110.00 L 288.78,38.89 A 81.00,81.00 0 0,1 302.34,48.18 z" style="fill: #75505b; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircleSector_19"/><path d="M 250.00,110.00 L 288.78,38.89 A 81.00,81.00 0 0,1 302.34,48.18 z" style="fill: none; stroke: #3b282e; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphCircleSector_20"/><path d="M 250.00,110.00 L 302.34,48.18 A 81.00,81.00 0 0,1 331.00,110.00 z" style="fill: #f57900; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircleSector_21"/><path d="M 250.00,110.00 L 302.34,48.18 A 81.00,81.00 0 0,1 331.00,110.00 z" style="fill: none; stroke: #7b3d00; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphCircleSector_22"/><path d=" M 248.1792,50.0276 L 204.7699,29.0000" style="fill: none; stroke: #000000; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_23"/><ellipse cx="248.17919395494" cy="50.027634152501" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_24"/><ellipse cx="204.76990950813" cy="29" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_25"/><path d=" M 210.8118,64.5656 L 179.7271,47.0000" style="fill: none; stroke: #000000; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_27"/><ellipse cx="210.81181529129" cy="64.565583758172" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_28"/><ellipse cx="179.72714414311" cy="47" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_29"/><path d=" M 229.2200,166.2867 L 204.7699,191.0000" style="fill: none; stroke: #000000; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_31"/><ellipse cx="229.21997746908" cy="166.28668282653" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_32"/><ellipse cx="204.76990950813" cy="191" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_33"/><path d=" M 283.9216,60.5094 L 305.7494,35.0000" style="fill: none; stroke: #000000; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_35"/><ellipse cx="283.92163212695" cy="60.509365796709" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_36"/><ellipse cx="305.74937185533" cy="35" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_37"/><path d=" M 304.4335,84.7612 L 337.5843,72.0000" style="fill: none; stroke: #000000; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_39"/><ellipse cx="304.43348875685" cy="84.761234147486" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_40"/><ellipse cx="337.58431221748" cy="72" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_41"/><text id="ezcGraphTextBox_4" x="19" text-length="51.94px" y="14.9" style="font-size: 14px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">Mozilla</text><text id="ezcGraphTextBox_6" x="118.6" text-length="14.84px" y="14.9" style="font-size: 14px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">IE</text><text id="ezcGraphTextBox_8" x="218.2" text-length="37.1px" y="14.9" style="font-size: 14px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">Opera</text><text id="ezcGraphTextBox_10" x="317.8" text-length="29.68px" y="14.9" style="font-size: 14px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">wget</text><text id="ezcGraphTextBox_12" x="417.4" text-length="44.52px" y="14.9" style="font-size: 14px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">Safari</text><text id="ezcGraphTextBox_26" x="47.719909508134" text-length="151.05px" y="34.25" style="font-size: 15px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">Opera: 1204 (16.9%)</text><text id="ezcGraphTextBox_30" x="62.427144143114" text-length="111.3px" y="52.25" style="font-size: 15px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">IE: 345 (4.8%)</text><text id="ezcGraphTextBox_34" x="31.819909508134" text-length="166.95px" y="196.25" style="font-size: 15px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">Mozilla: 4375 (61.3%)</text><text id="ezcGraphTextBox_38" x="311.74937185533" text-length="127.2px" y="40.25" style="font-size: 15px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">wget: 231 (3.2%)</text><text id="ezcGraphTextBox_42" x="343.58431221748" text-length="151.05px" y="77.25" style="font-size: 15px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">Safari: 987 (13.8%)</text></g></svg>
+<svg xmlns="http://www.w3.org/2000/svg" width="500" height="200" version="1.0" id="ezcGraph"><defs/><g id="ezcGraphChart" color-rendering="optimizeQuality" shape-rendering="geometricPrecision" text-rendering="optimizeLegibility"><path d=" M 0.0000,200.0000 L 0.0000,0.0000 L 500.0000,0.0000 L 500.0000,200.0000 L 0.0000,200.0000 z " style="fill: #eeeeec; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_1"/><path d=" M 0.0000,20.0000 L 0.0000,0.0000 L 500.0000,0.0000 L 500.0000,20.0000 L 0.0000,20.0000 z " style="fill: #000000; fill-opacity: 0.00; stroke: none;" id="ezcGraphPolygon_2"/><path d=" M 4.0000,16.0000 L 4.0000,4.0000 L 16.0000,4.0000 L 16.0000,16.0000 L 4.0000,16.0000 z " style="fill: #4e9a06; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_3"/><path d=" M 103.2000,16.0000 L 103.2000,4.0000 L 115.2000,4.0000 L 115.2000,16.0000 L 103.2000,16.0000 z " style="fill: #cc0000; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_5"/><path d=" M 202.4000,16.0000 L 202.4000,4.0000 L 214.4000,4.0000 L 214.4000,16.0000 L 202.4000,16.0000 z " style="fill: #edd400; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_7"/><path d=" M 301.6000,16.0000 L 301.6000,4.0000 L 313.6000,4.0000 L 313.6000,16.0000 L 301.6000,16.0000 z " style="fill: #75505b; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_9"/><path d=" M 400.8000,16.0000 L 400.8000,4.0000 L 412.8000,4.0000 L 412.8000,16.0000 L 400.8000,16.0000 z " style="fill: #f57900; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_11"/><path d="M 250.00,110.00 L 331.00,110.00 A 81.00,81.00 0 1,1 188.43,57.37 z" style="fill: #4e9a06; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircleSector_13"/><path d="M 250.00,110.00 L 331.00,110.00 A 81.00,81.00 0 1,1 188.43,57.37 z" style="fill: none; stroke: #274d03; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphCircleSector_14"/><path d="M 250.00,110.00 L 188.43,57.37 A 81.00,81.00 0 0,1 206.98,41.37 z" style="fill: #cc0000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircleSector_15"/><path d="M 250.00,110.00 L 188.43,57.37 A 81.00,81.00 0 0,1 206.98,41.37 z" style="fill: none; stroke: #660000; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphCircleSector_16"/><path d="M 250.00,110.00 L 206.98,41.37 A 81.00,81.00 0 0,1 288.78,38.89 z" style="fill: #edd400; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircleSector_17"/><path d="M 250.00,110.00 L 206.98,41.37 A 81.00,81.00 0 0,1 288.78,38.89 z" style="fill: none; stroke: #776a00; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphCircleSector_18"/><path d="M 250.00,110.00 L 288.78,38.89 A 81.00,81.00 0 0,1 302.34,48.18 z" style="fill: #75505b; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircleSector_19"/><path d="M 250.00,110.00 L 288.78,38.89 A 81.00,81.00 0 0,1 302.34,48.18 z" style="fill: none; stroke: #3b282e; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphCircleSector_20"/><path d="M 250.00,110.00 L 302.34,48.18 A 81.00,81.00 0 0,1 331.00,110.00 z" style="fill: #f57900; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircleSector_21"/><path d="M 250.00,110.00 L 302.34,48.18 A 81.00,81.00 0 0,1 331.00,110.00 z" style="fill: none; stroke: #7b3d00; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphCircleSector_22"/><path d=" M 248.1792,50.0276 L 204.7699,29.0000" style="fill: none; stroke: #000000; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_23"/><ellipse cx="248.17919395494" cy="50.027634152501" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_24"/><ellipse cx="204.76990950813" cy="29" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_25"/><path d=" M 210.8118,64.5656 L 179.7271,47.0000" style="fill: none; stroke: #000000; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_27"/><ellipse cx="210.81181529129" cy="64.565583758172" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_28"/><ellipse cx="179.72714414311" cy="47" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_29"/><path d=" M 229.2200,166.2867 L 204.7699,191.0000" style="fill: none; stroke: #000000; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_31"/><ellipse cx="229.21997746908" cy="166.28668282653" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_32"/><ellipse cx="204.76990950813" cy="191" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_33"/><path d=" M 283.9216,60.5094 L 305.7494,35.0000" style="fill: none; stroke: #000000; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_35"/><ellipse cx="283.92163212695" cy="60.509365796709" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_36"/><ellipse cx="305.74937185533" cy="35" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_37"/><path d=" M 304.4335,84.7612 L 337.5843,72.0000" style="fill: none; stroke: #000000; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_39"/><ellipse cx="304.43348875685" cy="84.761234147486" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_40"/><ellipse cx="337.58431221748" cy="72" rx="3" ry="3" style="fill: #000000; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_41"/><text id="ezcGraphTextBox_4" x="18" text-length="44.52px" y="14.2" style="font-size: 12px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">Mozilla</text><text id="ezcGraphTextBox_6" x="117.2" text-length="12.72px" y="14.2" style="font-size: 12px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">IE</text><text id="ezcGraphTextBox_8" x="216.4" text-length="31.8px" y="14.2" style="font-size: 12px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">Opera</text><text id="ezcGraphTextBox_10" x="315.6" text-length="25.44px" y="14.2" style="font-size: 12px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">wget</text><text id="ezcGraphTextBox_12" x="414.8" text-length="38.16px" y="14.2" style="font-size: 12px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">Safari</text><text id="ezcGraphTextBox_26" x="47.719909508134" text-length="151.05px" y="34.25" style="font-size: 15px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">Opera: 1204 (16.9%)</text><text id="ezcGraphTextBox_30" x="62.427144143114" text-length="111.3px" y="52.25" style="font-size: 15px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">IE: 345 (4.8%)</text><text id="ezcGraphTextBox_34" x="31.819909508134" text-length="166.95px" y="196.25" style="font-size: 15px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">Mozilla: 4375 (61.3%)</text><text id="ezcGraphTextBox_38" x="311.74937185533" text-length="127.2px" y="40.25" style="font-size: 15px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">wget: 231 (3.2%)</text><text id="ezcGraphTextBox_42" x="343.58431221748" text-length="151.05px" y="77.25" style="font-size: 15px; font-family: sans-serif; fill: #2e3436; fill-opacity: 1.00; stroke: none;">Safari: 987 (13.8%)</text></g></svg>
diff --git a/tests/data/compare/ezcGraphRenderer3dTest_testRender3dFilledLineChartNonFilledGrid.svg b/tests/data/compare/ezcGraphRenderer3dTest_testRender3dFilledLineChartNonFilledGrid.svg
index 81389a8..8fb3f11 100644
--- a/tests/data/compare/ezcGraphRenderer3dTest_testRender3dFilledLineChartNonFilledGrid.svg
+++ b/tests/data/compare/ezcGraphRenderer3dTest_testRender3dFilledLineChartNonFilledGrid.svg
@@ -1,2 +1,2 @@
<?xml version="1.0"?>
-<svg xmlns="http://www.w3.org/2000/svg" width="500" height="200" version="1.0" id="ezcGraph"><defs/><g id="ezcGraphChart" color-rendering="optimizeQuality" shape-rendering="geometricPrecision" text-rendering="optimizeLegibility"><path d=" M 0.0000,200.0000 L 0.0000,0.0000 L 500.0000,0.0000 L 500.0000,200.0000 L 0.0000,200.0000 z " style="fill: #2e3436; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_1"/><path d=" M 1.0000,199.0000 L 1.0000,1.0000 L 99.0000,1.0000 L 99.0000,199.0000 L 1.0000,199.0000 z " style="fill: none; stroke: #555753; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphPolygon_2"/><path d=" M 2.0000,198.0000 L 2.0000,2.0000 L 98.0000,2.0000 L 98.0000,198.0000 L 2.0000,198.0000 z " style="fill: #000000; fill-opacity: 0.00; stroke: none;" id="ezcGraphPolygon_3"/><ellipse cx="11" cy="11" rx="7" ry="7" style="fill: #729fcf; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_4"/><ellipse cx="11" cy="29" rx="7" ry="7" style="fill: #ef2929; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_6"/><path d=" M 100.0000,182.0000 L 120.0000,162.0000 L 500.0000,162.0000 L 480.0000,182.0000 L 100.0000,182.0000 z " style="fill: #eeeeec; fill-opacity: 0.20; stroke: none;" id="ezcGraphPolygon_8"/><path d=" M 120.0000,162.0000 L 500.0000,162.0000" style="fill: none; stroke: #eeeeec; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_9"/><path d=" M 492.0000,166.0000 L 500.0000,162.0000 L 492.0000,158.0000 L 492.0000,166.0000 z " style="fill: #eeeeec; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_10"/><path d=" M 138.0000,200.0000 L 158.0000,180.0000 L 158.0000,0.0000 L 138.0000,20.0000 L 138.0000,200.0000 z " style="fill: #eeeeec; fill-opacity: 0.20; stroke: none;" id="ezcGraphPolygon_11"/><path d=" M 158.0000,180.0000 L 158.0000,0.0000" style="fill: none; stroke: #eeeeec; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_12"/><path d=" M 155.5000,5.0000 L 158.0000,0.0000 L 160.5000,5.0000 L 155.5000,5.0000 z " style="fill: #eeeeec; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_13"/><path d=" M 234.0000,18.0000 L 214.0000,38.0000 L 214.0000,182.0000 L 234.0000,162.0000 L 234.0000,18.0000 z " style="fill: #888a85; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_14"/><path d=" M 234.0000,162.0000 L 234.0000,18.0000" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_15"/><path d=" M 214.0000,179.3000 L 234.0000,159.3000 L 234.0000,162.0000 L 214.0000,182.0000 L 214.0000,179.3000 z " style="fill: #eeeeec; fill-opacity: 0.20; stroke: none;" id="ezcGraphPolygon_16"/><path d=" M 214.0000,179.3000 L 234.0000,159.3000 L 234.0000,162.0000 L 214.0000,182.0000 L 214.0000,179.3000 z " style="fill: none; stroke: #eeeeec; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphPolygon_17"/><path d=" M 310.0000,18.0000 L 290.0000,38.0000 L 290.0000,182.0000 L 310.0000,162.0000 L 310.0000,18.0000 z " style="fill: #888a85; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_19"/><path d=" M 310.0000,162.0000 L 310.0000,18.0000" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_20"/><path d=" M 290.0000,179.3000 L 310.0000,159.3000 L 310.0000,162.0000 L 290.0000,182.0000 L 290.0000,179.3000 z " style="fill: #eeeeec; fill-opacity: 0.20; stroke: none;" id="ezcGraphPolygon_21"/><path d=" M 290.0000,179.3000 L 310.0000,159.3000 L 310.0000,162.0000 L 290.0000,182.0000 L 290.0000,179.3000 z " style="fill: none; stroke: #eeeeec; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphPolygon_22"/><path d=" M 386.0000,18.0000 L 366.0000,38.0000 L 366.0000,182.0000 L 386.0000,162.0000 L 386.0000,18.0000 z " style="fill: #888a85; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_24"/><path d=" M 386.0000,162.0000 L 386.0000,18.0000" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_25"/><path d=" M 366.0000,179.3000 L 386.0000,159.3000 L 386.0000,162.0000 L 366.0000,182.0000 L 366.0000,179.3000 z " style="fill: #eeeeec; fill-opacity: 0.20; stroke: none;" id="ezcGraphPolygon_26"/><path d=" M 366.0000,179.3000 L 386.0000,159.3000 L 386.0000,162.0000 L 366.0000,182.0000 L 366.0000,179.3000 z " style="fill: none; stroke: #eeeeec; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphPolygon_27"/><path d=" M 462.0000,18.0000 L 442.0000,38.0000 L 442.0000,182.0000 L 462.0000,162.0000 L 462.0000,18.0000 z " style="fill: #888a85; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_29"/><path d=" M 462.0000,162.0000 L 462.0000,18.0000" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_30"/><path d=" M 442.0000,179.3000 L 462.0000,159.3000 L 462.0000,162.0000 L 442.0000,182.0000 L 442.0000,179.3000 z " style="fill: #eeeeec; fill-opacity: 0.20; stroke: none;" id="ezcGraphPolygon_31"/><path d=" M 442.0000,179.3000 L 462.0000,159.3000 L 462.0000,162.0000 L 442.0000,182.0000 L 442.0000,179.3000 z " style="fill: none; stroke: #eeeeec; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphPolygon_32"/><path d=" M 158.0000,151.9200 L 138.0000,171.9200 L 442.0000,171.9200 L 462.0000,151.9200 L 158.0000,151.9200 z " style="fill: #888a85; fill-opacity: 0.47; stroke: none;" id="ezcGraphPolygon_35"/><path d=" M 462.0000,151.9200 L 158.0000,151.9200" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_36"/><path d=" M 138.0000,172.4000 L 158.0000,152.4000 L 158.9500,152.4000 L 138.9500,172.4000 L 138.0000,172.4000 z " style="fill: #eeeeec; fill-opacity: 0.20; stroke: none;" id="ezcGraphPolygon_37"/><path d=" M 138.0000,172.4000 L 158.0000,152.4000 L 158.9500,152.4000 L 138.9500,172.4000 L 138.0000,172.4000 z " style="fill: none; stroke: #eeeeec; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphPolygon_38"/><path d=" M 158.0000,143.2800 L 138.0000,163.2800 L 442.0000,163.2800 L 462.0000,143.2800 L 158.0000,143.2800 z " style="fill: #888a85; fill-opacity: 0.47; stroke: none;" id="ezcGraphPolygon_39"/><path d=" M 462.0000,143.2800 L 158.0000,143.2800" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_40"/><path d=" M 138.0000,162.8000 L 158.0000,142.8000 L 158.9500,142.8000 L 138.9500,162.8000 L 138.0000,162.8000 z " style="fill: #eeeeec; fill-opacity: 0.20; stroke: none;" id="ezcGraphPolygon_41"/><path d=" M 138.0000,162.8000 L 158.0000,142.8000 L 158.9500,142.8000 L 138.9500,162.8000 L 138.0000,162.8000 z " style="fill: none; stroke: #eeeeec; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphPolygon_42"/><path d=" M 158.0000,133.2000 L 138.0000,153.2000 L 442.0000,153.2000 L 462.0000,133.2000 L 158.0000,133.2000 z " style="fill: #888a85; fill-opacity: 0.47; stroke: none;" id="ezcGraphPolygon_43"/><path d=" M 462.0000,133.2000 L 158.0000,133.2000" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_44"/><path d=" M 138.0000,153.2000 L 158.0000,133.2000 L 158.9500,133.2000 L 138.9500,153.2000 L 138.0000,153.2000 z " style="fill: #eeeeec; fill-opacity: 0.20; stroke: none;" id="ezcGraphPolygon_45"/><path d=" M 138.0000,153.2000 L 158.0000,133.2000 L 158.9500,133.2000 L 138.9500,153.2000 L 138.0000,153.2000 z " style="fill: none; stroke: #eeeeec; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphPolygon_46"/><path d=" M 158.0000,123.1200 L 138.0000,143.1200 L 442.0000,143.1200 L 462.0000,123.1200 L 158.0000,123.1200 z " style="fill: #888a85; fill-opacity: 0.47; stroke: none;" id="ezcGraphPolygon_47"/><path d=" M 462.0000,123.1200 L 158.0000,123.1200" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_48"/><path d=" M 138.0000,143.6000 L 158.0000,123.6000 L 158.9500,123.6000 L 138.9500,143.6000 L 138.0000,143.6000 z " style="fill: #eeeeec; fill-opacity: 0.20; stroke: none;" id="ezcGraphPolygon_49"/><path d=" M 138.0000,143.6000 L 158.0000,123.6000 L 158.9500,123.6000 L 138.9500,143.6000 L 138.0000,143.6000 z " style="fill: none; stroke: #eeeeec; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphPolygon_50"/><path d=" M 158.0000,114.4800 L 138.0000,134.4800 L 442.0000,134.4800 L 462.0000,114.4800 L 158.0000,114.4800 z " style="fill: #888a85; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_51"/><path d=" M 462.0000,114.4800 L 158.0000,114.4800" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_52"/><path d=" M 138.0000,134.0000 L 158.0000,114.0000 L 160.8500,114.0000 L 140.8500,134.0000 L 138.0000,134.0000 z " style="fill: #eeeeec; fill-opacity: 0.20; stroke: none;" id="ezcGraphPolygon_53"/><path d=" M 138.0000,134.0000 L 158.0000,114.0000 L 160.8500,114.0000 L 140.8500,134.0000 L 138.0000,134.0000 z " style="fill: none; stroke: #eeeeec; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphPolygon_54"/><path d=" M 158.0000,104.4000 L 138.0000,124.4000 L 442.0000,124.4000 L 462.0000,104.4000 L 158.0000,104.4000 z " style="fill: #888a85; fill-opacity: 0.47; stroke: none;" id="ezcGraphPolygon_56"/><path d=" M 462.0000,104.4000 L 158.0000,104.4000" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_57"/><path d=" M 138.0000,124.4000 L 158.0000,104.4000 L 158.9500,104.4000 L 138.9500,124.4000 L 138.0000,124.4000 z " style="fill: #eeeeec; fill-opacity: 0.20; stroke: none;" id="ezcGraphPolygon_58"/><path d=" M 138.0000,124.4000 L 158.0000,104.4000 L 158.9500,104.4000 L 138.9500,124.4000 L 138.0000,124.4000 z " style="fill: none; stroke: #eeeeec; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphPolygon_59"/><path d=" M 158.0000,94.3200 L 138.0000,114.3200 L 442.0000,114.3200 L 462.0000,94.3200 L 158.0000,94.3200 z " style="fill: #888a85; fill-opacity: 0.47; stroke: none;" id="ezcGraphPolygon_60"/><path d=" M 462.0000,94.3200 L 158.0000,94.3200" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_61"/><path d=" M 138.0000,114.8000 L 158.0000,94.8000 L 158.9500,94.8000 L 138.9500,114.8000 L 138.0000,114.8000 z " style="fill: #eeeeec; fill-opacity: 0.20; stroke: none;" id="ezcGraphPolygon_62"/><path d=" M 138.0000,114.8000 L 158.0000,94.8000 L 158.9500,94.8000 L 138.9500,114.8000 L 138.0000,114.8000 z " style="fill: none; stroke: #eeeeec; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphPolygon_63"/><path d=" M 158.0000,85.6800 L 138.0000,105.6800 L 442.0000,105.6800 L 462.0000,85.6800 L 158.0000,85.6800 z " style="fill: #888a85; fill-opacity: 0.47; stroke: none;" id="ezcGraphPolygon_64"/><path d=" M 462.0000,85.6800 L 158.0000,85.6800" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_65"/><path d=" M 138.0000,105.2000 L 158.0000,85.2000 L 158.9500,85.2000 L 138.9500,105.2000 L 138.0000,105.2000 z " style="fill: #eeeeec; fill-opacity: 0.20; stroke: none;" id="ezcGraphPolygon_66"/><path d=" M 138.0000,105.2000 L 158.0000,85.2000 L 158.9500,85.2000 L 138.9500,105.2000 L 138.0000,105.2000 z " style="fill: none; stroke: #eeeeec; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphPolygon_67"/><path d=" M 158.0000,75.6000 L 138.0000,95.6000 L 442.0000,95.6000 L 462.0000,75.6000 L 158.0000,75.6000 z " style="fill: #888a85; fill-opacity: 0.47; stroke: none;" id="ezcGraphPolygon_68"/><path d=" M 462.0000,75.6000 L 158.0000,75.6000" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_69"/><path d=" M 138.0000,95.6000 L 158.0000,75.6000 L 158.9500,75.6000 L 138.9500,95.6000 L 138.0000,95.6000 z " style="fill: #eeeeec; fill-opacity: 0.20; stroke: none;" id="ezcGraphPolygon_70"/><path d=" M 138.0000,95.6000 L 158.0000,75.6000 L 158.9500,75.6000 L 138.9500,95.6000 L 138.0000,95.6000 z " style="fill: none; stroke: #eeeeec; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphPolygon_71"/><path d=" M 158.0000,65.5200 L 138.0000,85.5200 L 442.0000,85.5200 L 462.0000,65.5200 L 158.0000,65.5200 z " style="fill: #888a85; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_72"/><path d=" M 462.0000,65.5200 L 158.0000,65.5200" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_73"/><path d=" M 138.0000,86.0000 L 158.0000,66.0000 L 160.8500,66.0000 L 140.8500,86.0000 L 138.0000,86.0000 z " style="fill: #eeeeec; fill-opacity: 0.20; stroke: none;" id="ezcGraphPolygon_74"/><path d=" M 138.0000,86.0000 L 158.0000,66.0000 L 160.8500,66.0000 L 140.8500,86.0000 L 138.0000,86.0000 z " style="fill: none; stroke: #eeeeec; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphPolygon_75"/><path d=" M 158.0000,56.8800 L 138.0000,76.8800 L 442.0000,76.8800 L 462.0000,56.8800 L 158.0000,56.8800 z " style="fill: #888a85; fill-opacity: 0.47; stroke: none;" id="ezcGraphPolygon_77"/><path d=" M 462.0000,56.8800 L 158.0000,56.8800" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_78"/><path d=" M 138.0000,76.4000 L 158.0000,56.4000 L 158.9500,56.4000 L 138.9500,76.4000 L 138.0000,76.4000 z " style="fill: #eeeeec; fill-opacity: 0.20; stroke: none;" id="ezcGraphPolygon_79"/><path d=" M 138.0000,76.4000 L 158.0000,56.4000 L 158.9500,56.4000 L 138.9500,76.4000 L 138.0000,76.4000 z " style="fill: none; stroke: #eeeeec; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphPolygon_80"/><path d=" M 158.0000,46.8000 L 138.0000,66.8000 L 442.0000,66.8000 L 462.0000,46.8000 L 158.0000,46.8000 z " style="fill: #888a85; fill-opacity: 0.47; stroke: none;" id="ezcGraphPolygon_81"/><path d=" M 462.0000,46.8000 L 158.0000,46.8000" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_82"/><path d=" M 138.0000,66.8000 L 158.0000,46.8000 L 158.9500,46.8000 L 138.9500,66.8000 L 138.0000,66.8000 z " style="fill: #eeeeec; fill-opacity: 0.20; stroke: none;" id="ezcGraphPolygon_83"/><path d=" M 138.0000,66.8000 L 158.0000,46.8000 L 158.9500,46.8000 L 138.9500,66.8000 L 138.0000,66.8000 z " style="fill: none; stroke: #eeeeec; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphPolygon_84"/><path d=" M 158.0000,36.7200 L 138.0000,56.7200 L 442.0000,56.7200 L 462.0000,36.7200 L 158.0000,36.7200 z " style="fill: #888a85; fill-opacity: 0.47; stroke: none;" id="ezcGraphPolygon_85"/><path d=" M 462.0000,36.7200 L 158.0000,36.7200" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_86"/><path d=" M 138.0000,57.2000 L 158.0000,37.2000 L 158.9500,37.2000 L 138.9500,57.2000 L 138.0000,57.2000 z " style="fill: #eeeeec; fill-opacity: 0.20; stroke: none;" id="ezcGraphPolygon_87"/><path d=" M 138.0000,57.2000 L 158.0000,37.2000 L 158.9500,37.2000 L 138.9500,57.2000 L 138.0000,57.2000 z " style="fill: none; stroke: #eeeeec; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphPolygon_88"/><path d=" M 158.0000,28.0800 L 138.0000,48.0800 L 442.0000,48.0800 L 462.0000,28.0800 L 158.0000,28.0800 z " style="fill: #888a85; fill-opacity: 0.47; stroke: none;" id="ezcGraphPolygon_89"/><path d=" M 462.0000,28.0800 L 158.0000,28.0800" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_90"/><path d=" M 138.0000,47.6000 L 158.0000,27.6000 L 158.9500,27.6000 L 138.9500,47.6000 L 138.0000,47.6000 z " style="fill: #eeeeec; fill-opacity: 0.20; stroke: none;" id="ezcGraphPolygon_91"/><path d=" M 138.0000,47.6000 L 158.0000,27.6000 L 158.9500,27.6000 L 138.9500,47.6000 L 138.0000,47.6000 z " style="fill: none; stroke: #eeeeec; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphPolygon_92"/><path d=" M 158.0000,18.0000 L 138.0000,38.0000 L 442.0000,38.0000 L 462.0000,18.0000 L 158.0000,18.0000 z " style="fill: #888a85; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_93"/><path d=" M 462.0000,18.0000 L 158.0000,18.0000" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_94"/><path d=" M 138.0000,38.0000 L 158.0000,18.0000 L 160.8500,18.0000 L 140.8500,38.0000 L 138.0000,38.0000 z " style="fill: #eeeeec; fill-opacity: 0.20; stroke: none;" id="ezcGraphPolygon_95"/><path d=" M 138.0000,38.0000 L 158.0000,18.0000 L 160.8500,18.0000 L 140.8500,38.0000 L 138.0000,38.0000 z " style="fill: none; stroke: #eeeeec; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphPolygon_96"/><path d=" M 158.0000,117.0720 L 148.0000,127.0720 L 148.0000,127.0720 L 158.0000,117.0720 L 158.0000,117.0720 z " style="fill: #729fcf; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_98"/><path d=" M 158.0000,117.0720 L 148.0000,127.0720 L 148.0000,127.0720 L 158.0000,117.0720 L 158.0000,117.0720 z " style="fill: none; stroke: #395068; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphPolygon_99"/><path d=" M 158.0000,117.0720 L 148.0000,127.0720 L 224.0000,167.9680 L 234.0000,157.9680 L 158.0000,117.0720 z " style="fill: #729fcf; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_100"/><path d=" M 158.0000,117.0720 L 148.0000,127.0720 L 224.0000,167.9680 L 234.0000,157.9680 L 158.0000,117.0720 z " style="fill: none; stroke: #395068; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphPolygon_101"/><path d=" M 234.0000,157.9680 L 224.0000,167.9680 L 300.0000,109.7920 L 310.0000,99.7920 L 234.0000,157.9680 z " style="fill: #729fcf; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_102"/><path d=" M 234.0000,157.9680 L 224.0000,167.9680 L 300.0000,109.7920 L 310.0000,99.7920 L 234.0000,157.9680 z " style="fill: none; stroke: #395068; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphPolygon_103"/><path d=" M 310.0000,99.7920 L 300.0000,109.7920 L 376.0000,148.9600 L 386.0000,138.9600 L 310.0000,99.7920 z " style="fill: #729fcf; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_104"/><path d=" M 310.0000,99.7920 L 300.0000,109.7920 L 376.0000,148.9600 L 386.0000,138.9600 L 310.0000,99.7920 z " style="fill: none; stroke: #395068; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphPolygon_105"/><path d=" M 386.0000,138.9600 L 376.0000,148.9600 L 452.0000,171.8080 L 462.0000,161.8080 L 386.0000,138.9600 z " style="fill: #729fcf; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_106"/><path d=" M 386.0000,138.9600 L 376.0000,148.9600 L 452.0000,171.8080 L 462.0000,161.8080 L 386.0000,138.9600 z " style="fill: none; stroke: #395068; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphPolygon_107"/><path d=" M 148.0000,67.7440 L 138.0000,77.7440 L 138.0000,77.7440 L 148.0000,67.7440 L 148.0000,67.7440 z " style="fill: #ef2929; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_108"/><path d=" M 148.0000,67.7440 L 138.0000,77.7440 L 138.0000,77.7440 L 148.0000,67.7440 L 148.0000,67.7440 z " style="fill: none; stroke: #781515; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphPolygon_109"/><path d=" M 148.0000,67.7440 L 138.0000,77.7440 L 214.0000,137.0720 L 224.0000,127.0720 L 148.0000,67.7440 z " style="fill: #ef2929; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_110"/><path d=" M 148.0000,67.7440 L 138.0000,77.7440 L 214.0000,137.0720 L 224.0000,127.0720 L 148.0000,67.7440 z " style="fill: none; stroke: #781515; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphPolygon_111"/><path d=" M 224.0000,127.0720 L 214.0000,137.0720 L 290.0000,124.7840 L 300.0000,114.7840 L 224.0000,127.0720 z " style="fill: #ef2929; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_112"/><path d=" M 224.0000,127.0720 L 214.0000,137.0720 L 290.0000,124.7840 L 300.0000,114.7840 L 224.0000,127.0720 z " style="fill: none; stroke: #781515; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphPolygon_113"/><path d=" M 300.0000,114.7840 L 290.0000,124.7840 L 366.0000,181.0400 L 376.0000,171.0400 L 300.0000,114.7840 z " style="fill: #ef2929; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_114"/><path d=" M 300.0000,114.7840 L 290.0000,124.7840 L 366.0000,181.0400 L 376.0000,171.0400 L 300.0000,114.7840 z " style="fill: none; stroke: #781515; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphPolygon_115"/><path d=" M 376.0000,171.0400 L 366.0000,181.0400 L 442.0000,64.3040 L 452.0000,54.3040 L 376.0000,171.0400 z " style="fill: #ef2929; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_116"/><path d=" M 376.0000,171.0400 L 366.0000,181.0400 L 442.0000,64.3040 L 452.0000,54.3040 L 376.0000,171.0400 z " style="fill: none; stroke: #781515; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphPolygon_117"/><ellipse cx="158" cy="117.072" rx="3" ry="3" style="fill: #729fcf; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_118"/><ellipse cx="234" cy="157.968" rx="3" ry="3" style="fill: #729fcf; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_119"/><ellipse cx="310" cy="99.792" rx="3" ry="3" style="fill: #729fcf; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_120"/><ellipse cx="386" cy="138.96" rx="3" ry="3" style="fill: #729fcf; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_121"/><ellipse cx="462" cy="161.808" rx="3" ry="3" style="fill: #729fcf; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_122"/><ellipse cx="148" cy="67.744" rx="3" ry="3" style="fill: #ef2929; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_123"/><ellipse cx="224" cy="127.072" rx="3" ry="3" style="fill: #ef2929; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_124"/><ellipse cx="300" cy="114.784" rx="3" ry="3" style="fill: #ef2929; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_125"/><ellipse cx="376" cy="171.04" rx="3" ry="3" style="fill: #ef2929; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_126"/><ellipse cx="452" cy="54.304" rx="3" ry="3" style="fill: #ef2929; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_127"/><path d=" M 500.0000,162.0000 L 480.0000,182.0000" style="fill: none; stroke: #eeeeec; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_128"/><path d=" M 480.0000,182.0000 L 100.0000,182.0000" style="fill: none; stroke: #eeeeec; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_129"/><path d=" M 100.0000,182.0000 L 120.0000,162.0000" style="fill: none; stroke: #eeeeec; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_130"/><path d=" M 158.0000,0.0000 L 138.0000,20.0000" style="fill: none; stroke: #eeeeec; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_131"/><path d=" M 138.0000,20.0000 L 138.0000,200.0000" style="fill: none; stroke: #eeeeec; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_132"/><path d=" M 138.0000,200.0000 L 158.0000,180.0000" style="fill: none; stroke: #eeeeec; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_133"/><path d=" M 214.0000,38.0000 L 214.0000,182.0000" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_134"/><path d=" M 214.0000,182.0000 L 234.0000,162.0000" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_135"/><path d=" M 234.0000,18.0000 L 214.0000,38.0000" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_136"/><path d=" M 290.0000,38.0000 L 290.0000,182.0000" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_137"/><path d=" M 290.0000,182.0000 L 310.0000,162.0000" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_138"/><path d=" M 310.0000,18.0000 L 290.0000,38.0000" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_139"/><path d=" M 366.0000,38.0000 L 366.0000,182.0000" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_140"/><path d=" M 366.0000,182.0000 L 386.0000,162.0000" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_141"/><path d=" M 386.0000,18.0000 L 366.0000,38.0000" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_142"/><path d=" M 442.0000,38.0000 L 442.0000,182.0000" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_143"/><path d=" M 442.0000,182.0000 L 462.0000,162.0000" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_144"/><path d=" M 462.0000,18.0000 L 442.0000,38.0000" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_145"/><path d=" M 138.0000,171.9200 L 442.0000,171.9200" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_146"/><path d=" M 442.0000,171.9200 L 462.0000,151.9200" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_147"/><path d=" M 158.0000,151.9200 L 138.0000,171.9200" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_148"/><path d=" M 138.0000,163.2800 L 442.0000,163.2800" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_149"/><path d=" M 442.0000,163.2800 L 462.0000,143.2800" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_150"/><path d=" M 158.0000,143.2800 L 138.0000,163.2800" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_151"/><path d=" M 138.0000,153.2000 L 442.0000,153.2000" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_152"/><path d=" M 442.0000,153.2000 L 462.0000,133.2000" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_153"/><path d=" M 158.0000,133.2000 L 138.0000,153.2000" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_154"/><path d=" M 138.0000,143.1200 L 442.0000,143.1200" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_155"/><path d=" M 442.0000,143.1200 L 462.0000,123.1200" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_156"/><path d=" M 158.0000,123.1200 L 138.0000,143.1200" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_157"/><path d=" M 138.0000,134.4800 L 442.0000,134.4800" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_158"/><path d=" M 442.0000,134.4800 L 462.0000,114.4800" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_159"/><path d=" M 158.0000,114.4800 L 138.0000,134.4800" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_160"/><path d=" M 138.0000,124.4000 L 442.0000,124.4000" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_161"/><path d=" M 442.0000,124.4000 L 462.0000,104.4000" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_162"/><path d=" M 158.0000,104.4000 L 138.0000,124.4000" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_163"/><path d=" M 138.0000,114.3200 L 442.0000,114.3200" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_164"/><path d=" M 442.0000,114.3200 L 462.0000,94.3200" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_165"/><path d=" M 158.0000,94.3200 L 138.0000,114.3200" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_166"/><path d=" M 138.0000,105.6800 L 442.0000,105.6800" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_167"/><path d=" M 442.0000,105.6800 L 462.0000,85.6800" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_168"/><path d=" M 158.0000,85.6800 L 138.0000,105.6800" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_169"/><path d=" M 138.0000,95.6000 L 442.0000,95.6000" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_170"/><path d=" M 442.0000,95.6000 L 462.0000,75.6000" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_171"/><path d=" M 158.0000,75.6000 L 138.0000,95.6000" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_172"/><path d=" M 138.0000,85.5200 L 442.0000,85.5200" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_173"/><path d=" M 442.0000,85.5200 L 462.0000,65.5200" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_174"/><path d=" M 158.0000,65.5200 L 138.0000,85.5200" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_175"/><path d=" M 138.0000,76.8800 L 442.0000,76.8800" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_176"/><path d=" M 442.0000,76.8800 L 462.0000,56.8800" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_177"/><path d=" M 158.0000,56.8800 L 138.0000,76.8800" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_178"/><path d=" M 138.0000,66.8000 L 442.0000,66.8000" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_179"/><path d=" M 442.0000,66.8000 L 462.0000,46.8000" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_180"/><path d=" M 158.0000,46.8000 L 138.0000,66.8000" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_181"/><path d=" M 138.0000,56.7200 L 442.0000,56.7200" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_182"/><path d=" M 442.0000,56.7200 L 462.0000,36.7200" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_183"/><path d=" M 158.0000,36.7200 L 138.0000,56.7200" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_184"/><path d=" M 138.0000,48.0800 L 442.0000,48.0800" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_185"/><path d=" M 442.0000,48.0800 L 462.0000,28.0800" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_186"/><path d=" M 158.0000,28.0800 L 138.0000,48.0800" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_187"/><path d=" M 138.0000,38.0000 L 442.0000,38.0000" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_188"/><path d=" M 442.0000,38.0000 L 462.0000,18.0000" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_189"/><path d=" M 158.0000,18.0000 L 138.0000,38.0000" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_190"/><text id="ezcGraphTextBox_5" x="19" text-length="44.52px" y="15.9" style="font-size: 14px; font-family: sans-serif; fill: #d3d7cf; fill-opacity: 1.00; stroke: none;">Line 1</text><text id="ezcGraphTextBox_7" x="19" text-length="44.52px" y="33.9" style="font-size: 14px; font-family: sans-serif; fill: #d3d7cf; fill-opacity: 1.00; stroke: none;">Line 2</text><text id="ezcGraphTextBox_18" x="183.472" text-length="61.056px" y="196.04" style="font-size: 14px; font-family: sans-serif; fill: #d3d7cf; fill-opacity: 1.00; stroke: none;">sample 2</text><text id="ezcGraphTextBox_23" x="259.472" text-length="61.056px" y="196.04" style="font-size: 14px; font-family: sans-serif; fill: #d3d7cf; fill-opacity: 1.00; stroke: none;">sample 3</text><text id="ezcGraphTextBox_28" x="335.472" text-length="61.056px" y="196.04" style="font-size: 14px; font-family: sans-serif; fill: #d3d7cf; fill-opacity: 1.00; stroke: none;">sample 4</text><text id="ezcGraphTextBox_33" x="411.472" text-length="61.056px" y="196.04" style="font-size: 14px; font-family: sans-serif; fill: #d3d7cf; fill-opacity: 1.00; stroke: none;">sample 5</text><text id="ezcGraphTextBox_34" x="127.172" text-length="8.928px" y="178.04" style="font-size: 14px; font-family: sans-serif; fill: #d3d7cf; fill-opacity: 1.00; stroke: none;">0</text><text id="ezcGraphTextBox_55" x="109.316" text-length="26.784px" y="130.04" style="font-size: 14px; font-family: sans-serif; fill: #d3d7cf; fill-opacity: 1.00; stroke: none;">250</text><text id="ezcGraphTextBox_76" x="109.316" text-length="26.784px" y="82.04" style="font-size: 14px; font-family: sans-serif; fill: #d3d7cf; fill-opacity: 1.00; stroke: none;">500</text><text id="ezcGraphTextBox_97" x="109.316" text-length="26.784px" y="52.04" style="font-size: 14px; font-family: sans-serif; fill: #d3d7cf; fill-opacity: 1.00; stroke: none;">750</text></g></svg>
+<svg xmlns="http://www.w3.org/2000/svg" width="500" height="200" version="1.0" id="ezcGraph"><defs/><g id="ezcGraphChart" color-rendering="optimizeQuality" shape-rendering="geometricPrecision" text-rendering="optimizeLegibility"><path d=" M 0.0000,200.0000 L 0.0000,0.0000 L 500.0000,0.0000 L 500.0000,200.0000 L 0.0000,200.0000 z " style="fill: #2e3436; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_1"/><path d=" M 1.0000,199.0000 L 1.0000,1.0000 L 99.0000,1.0000 L 99.0000,199.0000 L 1.0000,199.0000 z " style="fill: none; stroke: #555753; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphPolygon_2"/><path d=" M 2.0000,198.0000 L 2.0000,2.0000 L 98.0000,2.0000 L 98.0000,198.0000 L 2.0000,198.0000 z " style="fill: #000000; fill-opacity: 0.00; stroke: none;" id="ezcGraphPolygon_3"/><ellipse cx="11" cy="11" rx="7" ry="7" style="fill: #729fcf; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_4"/><ellipse cx="11" cy="29" rx="7" ry="7" style="fill: #ef2929; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_6"/><path d=" M 100.0000,182.0000 L 120.0000,162.0000 L 500.0000,162.0000 L 480.0000,182.0000 L 100.0000,182.0000 z " style="fill: #eeeeec; fill-opacity: 0.20; stroke: none;" id="ezcGraphPolygon_8"/><path d=" M 120.0000,162.0000 L 500.0000,162.0000" style="fill: none; stroke: #eeeeec; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_9"/><path d=" M 492.0000,166.0000 L 500.0000,162.0000 L 492.0000,158.0000 L 492.0000,166.0000 z " style="fill: #eeeeec; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_10"/><path d=" M 138.0000,200.0000 L 158.0000,180.0000 L 158.0000,0.0000 L 138.0000,20.0000 L 138.0000,200.0000 z " style="fill: #eeeeec; fill-opacity: 0.20; stroke: none;" id="ezcGraphPolygon_11"/><path d=" M 158.0000,180.0000 L 158.0000,0.0000" style="fill: none; stroke: #eeeeec; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_12"/><path d=" M 155.5000,5.0000 L 158.0000,0.0000 L 160.5000,5.0000 L 155.5000,5.0000 z " style="fill: #eeeeec; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_13"/><path d=" M 234.0000,18.0000 L 214.0000,38.0000 L 214.0000,182.0000 L 234.0000,162.0000 L 234.0000,18.0000 z " style="fill: #888a85; fill-opacity: 0.00; stroke: none;" id="ezcGraphPolygon_14"/><path d=" M 234.0000,162.0000 L 234.0000,18.0000" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_15"/><path d=" M 214.0000,179.3000 L 234.0000,159.3000 L 234.0000,162.0000 L 214.0000,182.0000 L 214.0000,179.3000 z " style="fill: #eeeeec; fill-opacity: 0.20; stroke: none;" id="ezcGraphPolygon_16"/><path d=" M 214.0000,179.3000 L 234.0000,159.3000 L 234.0000,162.0000 L 214.0000,182.0000 L 214.0000,179.3000 z " style="fill: none; stroke: #eeeeec; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphPolygon_17"/><path d=" M 310.0000,18.0000 L 290.0000,38.0000 L 290.0000,182.0000 L 310.0000,162.0000 L 310.0000,18.0000 z " style="fill: #888a85; fill-opacity: 0.00; stroke: none;" id="ezcGraphPolygon_19"/><path d=" M 310.0000,162.0000 L 310.0000,18.0000" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_20"/><path d=" M 290.0000,179.3000 L 310.0000,159.3000 L 310.0000,162.0000 L 290.0000,182.0000 L 290.0000,179.3000 z " style="fill: #eeeeec; fill-opacity: 0.20; stroke: none;" id="ezcGraphPolygon_21"/><path d=" M 290.0000,179.3000 L 310.0000,159.3000 L 310.0000,162.0000 L 290.0000,182.0000 L 290.0000,179.3000 z " style="fill: none; stroke: #eeeeec; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphPolygon_22"/><path d=" M 386.0000,18.0000 L 366.0000,38.0000 L 366.0000,182.0000 L 386.0000,162.0000 L 386.0000,18.0000 z " style="fill: #888a85; fill-opacity: 0.00; stroke: none;" id="ezcGraphPolygon_24"/><path d=" M 386.0000,162.0000 L 386.0000,18.0000" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_25"/><path d=" M 366.0000,179.3000 L 386.0000,159.3000 L 386.0000,162.0000 L 366.0000,182.0000 L 366.0000,179.3000 z " style="fill: #eeeeec; fill-opacity: 0.20; stroke: none;" id="ezcGraphPolygon_26"/><path d=" M 366.0000,179.3000 L 386.0000,159.3000 L 386.0000,162.0000 L 366.0000,182.0000 L 366.0000,179.3000 z " style="fill: none; stroke: #eeeeec; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphPolygon_27"/><path d=" M 462.0000,18.0000 L 442.0000,38.0000 L 442.0000,182.0000 L 462.0000,162.0000 L 462.0000,18.0000 z " style="fill: #888a85; fill-opacity: 0.00; stroke: none;" id="ezcGraphPolygon_29"/><path d=" M 462.0000,162.0000 L 462.0000,18.0000" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_30"/><path d=" M 442.0000,179.3000 L 462.0000,159.3000 L 462.0000,162.0000 L 442.0000,182.0000 L 442.0000,179.3000 z " style="fill: #eeeeec; fill-opacity: 0.20; stroke: none;" id="ezcGraphPolygon_31"/><path d=" M 442.0000,179.3000 L 462.0000,159.3000 L 462.0000,162.0000 L 442.0000,182.0000 L 442.0000,179.3000 z " style="fill: none; stroke: #eeeeec; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphPolygon_32"/><path d=" M 158.0000,151.9200 L 138.0000,171.9200 L 442.0000,171.9200 L 462.0000,151.9200 L 158.0000,151.9200 z " style="fill: #888a85; fill-opacity: 0.00; stroke: none;" id="ezcGraphPolygon_35"/><path d=" M 462.0000,151.9200 L 158.0000,151.9200" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_36"/><path d=" M 138.0000,172.4000 L 158.0000,152.4000 L 158.9500,152.4000 L 138.9500,172.4000 L 138.0000,172.4000 z " style="fill: #eeeeec; fill-opacity: 0.20; stroke: none;" id="ezcGraphPolygon_37"/><path d=" M 138.0000,172.4000 L 158.0000,152.4000 L 158.9500,152.4000 L 138.9500,172.4000 L 138.0000,172.4000 z " style="fill: none; stroke: #eeeeec; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphPolygon_38"/><path d=" M 158.0000,143.2800 L 138.0000,163.2800 L 442.0000,163.2800 L 462.0000,143.2800 L 158.0000,143.2800 z " style="fill: #888a85; fill-opacity: 0.00; stroke: none;" id="ezcGraphPolygon_39"/><path d=" M 462.0000,143.2800 L 158.0000,143.2800" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_40"/><path d=" M 138.0000,162.8000 L 158.0000,142.8000 L 158.9500,142.8000 L 138.9500,162.8000 L 138.0000,162.8000 z " style="fill: #eeeeec; fill-opacity: 0.20; stroke: none;" id="ezcGraphPolygon_41"/><path d=" M 138.0000,162.8000 L 158.0000,142.8000 L 158.9500,142.8000 L 138.9500,162.8000 L 138.0000,162.8000 z " style="fill: none; stroke: #eeeeec; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphPolygon_42"/><path d=" M 158.0000,133.2000 L 138.0000,153.2000 L 442.0000,153.2000 L 462.0000,133.2000 L 158.0000,133.2000 z " style="fill: #888a85; fill-opacity: 0.00; stroke: none;" id="ezcGraphPolygon_43"/><path d=" M 462.0000,133.2000 L 158.0000,133.2000" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_44"/><path d=" M 138.0000,153.2000 L 158.0000,133.2000 L 158.9500,133.2000 L 138.9500,153.2000 L 138.0000,153.2000 z " style="fill: #eeeeec; fill-opacity: 0.20; stroke: none;" id="ezcGraphPolygon_45"/><path d=" M 138.0000,153.2000 L 158.0000,133.2000 L 158.9500,133.2000 L 138.9500,153.2000 L 138.0000,153.2000 z " style="fill: none; stroke: #eeeeec; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphPolygon_46"/><path d=" M 158.0000,123.1200 L 138.0000,143.1200 L 442.0000,143.1200 L 462.0000,123.1200 L 158.0000,123.1200 z " style="fill: #888a85; fill-opacity: 0.00; stroke: none;" id="ezcGraphPolygon_47"/><path d=" M 462.0000,123.1200 L 158.0000,123.1200" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_48"/><path d=" M 138.0000,143.6000 L 158.0000,123.6000 L 158.9500,123.6000 L 138.9500,143.6000 L 138.0000,143.6000 z " style="fill: #eeeeec; fill-opacity: 0.20; stroke: none;" id="ezcGraphPolygon_49"/><path d=" M 138.0000,143.6000 L 158.0000,123.6000 L 158.9500,123.6000 L 138.9500,143.6000 L 138.0000,143.6000 z " style="fill: none; stroke: #eeeeec; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphPolygon_50"/><path d=" M 158.0000,114.4800 L 138.0000,134.4800 L 442.0000,134.4800 L 462.0000,114.4800 L 158.0000,114.4800 z " style="fill: #888a85; fill-opacity: 0.00; stroke: none;" id="ezcGraphPolygon_51"/><path d=" M 462.0000,114.4800 L 158.0000,114.4800" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_52"/><path d=" M 138.0000,134.0000 L 158.0000,114.0000 L 160.8500,114.0000 L 140.8500,134.0000 L 138.0000,134.0000 z " style="fill: #eeeeec; fill-opacity: 0.20; stroke: none;" id="ezcGraphPolygon_53"/><path d=" M 138.0000,134.0000 L 158.0000,114.0000 L 160.8500,114.0000 L 140.8500,134.0000 L 138.0000,134.0000 z " style="fill: none; stroke: #eeeeec; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphPolygon_54"/><path d=" M 158.0000,104.4000 L 138.0000,124.4000 L 442.0000,124.4000 L 462.0000,104.4000 L 158.0000,104.4000 z " style="fill: #888a85; fill-opacity: 0.00; stroke: none;" id="ezcGraphPolygon_56"/><path d=" M 462.0000,104.4000 L 158.0000,104.4000" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_57"/><path d=" M 138.0000,124.4000 L 158.0000,104.4000 L 158.9500,104.4000 L 138.9500,124.4000 L 138.0000,124.4000 z " style="fill: #eeeeec; fill-opacity: 0.20; stroke: none;" id="ezcGraphPolygon_58"/><path d=" M 138.0000,124.4000 L 158.0000,104.4000 L 158.9500,104.4000 L 138.9500,124.4000 L 138.0000,124.4000 z " style="fill: none; stroke: #eeeeec; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphPolygon_59"/><path d=" M 158.0000,94.3200 L 138.0000,114.3200 L 442.0000,114.3200 L 462.0000,94.3200 L 158.0000,94.3200 z " style="fill: #888a85; fill-opacity: 0.00; stroke: none;" id="ezcGraphPolygon_60"/><path d=" M 462.0000,94.3200 L 158.0000,94.3200" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_61"/><path d=" M 138.0000,114.8000 L 158.0000,94.8000 L 158.9500,94.8000 L 138.9500,114.8000 L 138.0000,114.8000 z " style="fill: #eeeeec; fill-opacity: 0.20; stroke: none;" id="ezcGraphPolygon_62"/><path d=" M 138.0000,114.8000 L 158.0000,94.8000 L 158.9500,94.8000 L 138.9500,114.8000 L 138.0000,114.8000 z " style="fill: none; stroke: #eeeeec; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphPolygon_63"/><path d=" M 158.0000,85.6800 L 138.0000,105.6800 L 442.0000,105.6800 L 462.0000,85.6800 L 158.0000,85.6800 z " style="fill: #888a85; fill-opacity: 0.00; stroke: none;" id="ezcGraphPolygon_64"/><path d=" M 462.0000,85.6800 L 158.0000,85.6800" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_65"/><path d=" M 138.0000,105.2000 L 158.0000,85.2000 L 158.9500,85.2000 L 138.9500,105.2000 L 138.0000,105.2000 z " style="fill: #eeeeec; fill-opacity: 0.20; stroke: none;" id="ezcGraphPolygon_66"/><path d=" M 138.0000,105.2000 L 158.0000,85.2000 L 158.9500,85.2000 L 138.9500,105.2000 L 138.0000,105.2000 z " style="fill: none; stroke: #eeeeec; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphPolygon_67"/><path d=" M 158.0000,75.6000 L 138.0000,95.6000 L 442.0000,95.6000 L 462.0000,75.6000 L 158.0000,75.6000 z " style="fill: #888a85; fill-opacity: 0.00; stroke: none;" id="ezcGraphPolygon_68"/><path d=" M 462.0000,75.6000 L 158.0000,75.6000" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_69"/><path d=" M 138.0000,95.6000 L 158.0000,75.6000 L 158.9500,75.6000 L 138.9500,95.6000 L 138.0000,95.6000 z " style="fill: #eeeeec; fill-opacity: 0.20; stroke: none;" id="ezcGraphPolygon_70"/><path d=" M 138.0000,95.6000 L 158.0000,75.6000 L 158.9500,75.6000 L 138.9500,95.6000 L 138.0000,95.6000 z " style="fill: none; stroke: #eeeeec; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphPolygon_71"/><path d=" M 158.0000,65.5200 L 138.0000,85.5200 L 442.0000,85.5200 L 462.0000,65.5200 L 158.0000,65.5200 z " style="fill: #888a85; fill-opacity: 0.00; stroke: none;" id="ezcGraphPolygon_72"/><path d=" M 462.0000,65.5200 L 158.0000,65.5200" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_73"/><path d=" M 138.0000,86.0000 L 158.0000,66.0000 L 160.8500,66.0000 L 140.8500,86.0000 L 138.0000,86.0000 z " style="fill: #eeeeec; fill-opacity: 0.20; stroke: none;" id="ezcGraphPolygon_74"/><path d=" M 138.0000,86.0000 L 158.0000,66.0000 L 160.8500,66.0000 L 140.8500,86.0000 L 138.0000,86.0000 z " style="fill: none; stroke: #eeeeec; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphPolygon_75"/><path d=" M 158.0000,56.8800 L 138.0000,76.8800 L 442.0000,76.8800 L 462.0000,56.8800 L 158.0000,56.8800 z " style="fill: #888a85; fill-opacity: 0.00; stroke: none;" id="ezcGraphPolygon_77"/><path d=" M 462.0000,56.8800 L 158.0000,56.8800" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_78"/><path d=" M 138.0000,76.4000 L 158.0000,56.4000 L 158.9500,56.4000 L 138.9500,76.4000 L 138.0000,76.4000 z " style="fill: #eeeeec; fill-opacity: 0.20; stroke: none;" id="ezcGraphPolygon_79"/><path d=" M 138.0000,76.4000 L 158.0000,56.4000 L 158.9500,56.4000 L 138.9500,76.4000 L 138.0000,76.4000 z " style="fill: none; stroke: #eeeeec; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphPolygon_80"/><path d=" M 158.0000,46.8000 L 138.0000,66.8000 L 442.0000,66.8000 L 462.0000,46.8000 L 158.0000,46.8000 z " style="fill: #888a85; fill-opacity: 0.00; stroke: none;" id="ezcGraphPolygon_81"/><path d=" M 462.0000,46.8000 L 158.0000,46.8000" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_82"/><path d=" M 138.0000,66.8000 L 158.0000,46.8000 L 158.9500,46.8000 L 138.9500,66.8000 L 138.0000,66.8000 z " style="fill: #eeeeec; fill-opacity: 0.20; stroke: none;" id="ezcGraphPolygon_83"/><path d=" M 138.0000,66.8000 L 158.0000,46.8000 L 158.9500,46.8000 L 138.9500,66.8000 L 138.0000,66.8000 z " style="fill: none; stroke: #eeeeec; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphPolygon_84"/><path d=" M 158.0000,36.7200 L 138.0000,56.7200 L 442.0000,56.7200 L 462.0000,36.7200 L 158.0000,36.7200 z " style="fill: #888a85; fill-opacity: 0.00; stroke: none;" id="ezcGraphPolygon_85"/><path d=" M 462.0000,36.7200 L 158.0000,36.7200" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_86"/><path d=" M 138.0000,57.2000 L 158.0000,37.2000 L 158.9500,37.2000 L 138.9500,57.2000 L 138.0000,57.2000 z " style="fill: #eeeeec; fill-opacity: 0.20; stroke: none;" id="ezcGraphPolygon_87"/><path d=" M 138.0000,57.2000 L 158.0000,37.2000 L 158.9500,37.2000 L 138.9500,57.2000 L 138.0000,57.2000 z " style="fill: none; stroke: #eeeeec; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphPolygon_88"/><path d=" M 158.0000,28.0800 L 138.0000,48.0800 L 442.0000,48.0800 L 462.0000,28.0800 L 158.0000,28.0800 z " style="fill: #888a85; fill-opacity: 0.00; stroke: none;" id="ezcGraphPolygon_89"/><path d=" M 462.0000,28.0800 L 158.0000,28.0800" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_90"/><path d=" M 138.0000,47.6000 L 158.0000,27.6000 L 158.9500,27.6000 L 138.9500,47.6000 L 138.0000,47.6000 z " style="fill: #eeeeec; fill-opacity: 0.20; stroke: none;" id="ezcGraphPolygon_91"/><path d=" M 138.0000,47.6000 L 158.0000,27.6000 L 158.9500,27.6000 L 138.9500,47.6000 L 138.0000,47.6000 z " style="fill: none; stroke: #eeeeec; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphPolygon_92"/><path d=" M 158.0000,18.0000 L 138.0000,38.0000 L 442.0000,38.0000 L 462.0000,18.0000 L 158.0000,18.0000 z " style="fill: #888a85; fill-opacity: 0.00; stroke: none;" id="ezcGraphPolygon_93"/><path d=" M 462.0000,18.0000 L 158.0000,18.0000" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_94"/><path d=" M 138.0000,38.0000 L 158.0000,18.0000 L 160.8500,18.0000 L 140.8500,38.0000 L 138.0000,38.0000 z " style="fill: #eeeeec; fill-opacity: 0.20; stroke: none;" id="ezcGraphPolygon_95"/><path d=" M 138.0000,38.0000 L 158.0000,18.0000 L 160.8500,18.0000 L 140.8500,38.0000 L 138.0000,38.0000 z " style="fill: none; stroke: #eeeeec; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphPolygon_96"/><path d=" M 158.0000,117.0720 L 148.0000,127.0720 L 148.0000,127.0720 L 158.0000,117.0720 L 158.0000,117.0720 z " style="fill: #729fcf; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_98"/><path d=" M 158.0000,117.0720 L 148.0000,127.0720 L 148.0000,127.0720 L 158.0000,117.0720 L 158.0000,117.0720 z " style="fill: none; stroke: #395068; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphPolygon_99"/><path d=" M 158.0000,117.0720 L 148.0000,127.0720 L 224.0000,167.9680 L 234.0000,157.9680 L 158.0000,117.0720 z " style="fill: #729fcf; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_100"/><path d=" M 158.0000,117.0720 L 148.0000,127.0720 L 224.0000,167.9680 L 234.0000,157.9680 L 158.0000,117.0720 z " style="fill: none; stroke: #395068; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphPolygon_101"/><path d=" M 234.0000,157.9680 L 224.0000,167.9680 L 300.0000,109.7920 L 310.0000,99.7920 L 234.0000,157.9680 z " style="fill: #729fcf; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_102"/><path d=" M 234.0000,157.9680 L 224.0000,167.9680 L 300.0000,109.7920 L 310.0000,99.7920 L 234.0000,157.9680 z " style="fill: none; stroke: #395068; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphPolygon_103"/><path d=" M 310.0000,99.7920 L 300.0000,109.7920 L 376.0000,148.9600 L 386.0000,138.9600 L 310.0000,99.7920 z " style="fill: #729fcf; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_104"/><path d=" M 310.0000,99.7920 L 300.0000,109.7920 L 376.0000,148.9600 L 386.0000,138.9600 L 310.0000,99.7920 z " style="fill: none; stroke: #395068; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphPolygon_105"/><path d=" M 386.0000,138.9600 L 376.0000,148.9600 L 452.0000,171.8080 L 462.0000,161.8080 L 386.0000,138.9600 z " style="fill: #729fcf; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_106"/><path d=" M 386.0000,138.9600 L 376.0000,148.9600 L 452.0000,171.8080 L 462.0000,161.8080 L 386.0000,138.9600 z " style="fill: none; stroke: #395068; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphPolygon_107"/><path d=" M 148.0000,67.7440 L 138.0000,77.7440 L 138.0000,77.7440 L 148.0000,67.7440 L 148.0000,67.7440 z " style="fill: #ef2929; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_108"/><path d=" M 148.0000,67.7440 L 138.0000,77.7440 L 138.0000,77.7440 L 148.0000,67.7440 L 148.0000,67.7440 z " style="fill: none; stroke: #781515; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphPolygon_109"/><path d=" M 148.0000,67.7440 L 138.0000,77.7440 L 214.0000,137.0720 L 224.0000,127.0720 L 148.0000,67.7440 z " style="fill: #ef2929; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_110"/><path d=" M 148.0000,67.7440 L 138.0000,77.7440 L 214.0000,137.0720 L 224.0000,127.0720 L 148.0000,67.7440 z " style="fill: none; stroke: #781515; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphPolygon_111"/><path d=" M 224.0000,127.0720 L 214.0000,137.0720 L 290.0000,124.7840 L 300.0000,114.7840 L 224.0000,127.0720 z " style="fill: #ef2929; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_112"/><path d=" M 224.0000,127.0720 L 214.0000,137.0720 L 290.0000,124.7840 L 300.0000,114.7840 L 224.0000,127.0720 z " style="fill: none; stroke: #781515; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphPolygon_113"/><path d=" M 300.0000,114.7840 L 290.0000,124.7840 L 366.0000,181.0400 L 376.0000,171.0400 L 300.0000,114.7840 z " style="fill: #ef2929; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_114"/><path d=" M 300.0000,114.7840 L 290.0000,124.7840 L 366.0000,181.0400 L 376.0000,171.0400 L 300.0000,114.7840 z " style="fill: none; stroke: #781515; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphPolygon_115"/><path d=" M 376.0000,171.0400 L 366.0000,181.0400 L 442.0000,64.3040 L 452.0000,54.3040 L 376.0000,171.0400 z " style="fill: #ef2929; fill-opacity: 1.00; stroke: none;" id="ezcGraphPolygon_116"/><path d=" M 376.0000,171.0400 L 366.0000,181.0400 L 442.0000,64.3040 L 452.0000,54.3040 L 376.0000,171.0400 z " style="fill: none; stroke: #781515; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphPolygon_117"/><ellipse cx="158" cy="117.072" rx="3" ry="3" style="fill: #729fcf; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_118"/><ellipse cx="234" cy="157.968" rx="3" ry="3" style="fill: #729fcf; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_119"/><ellipse cx="310" cy="99.792" rx="3" ry="3" style="fill: #729fcf; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_120"/><ellipse cx="386" cy="138.96" rx="3" ry="3" style="fill: #729fcf; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_121"/><ellipse cx="462" cy="161.808" rx="3" ry="3" style="fill: #729fcf; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_122"/><ellipse cx="148" cy="67.744" rx="3" ry="3" style="fill: #ef2929; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_123"/><ellipse cx="224" cy="127.072" rx="3" ry="3" style="fill: #ef2929; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_124"/><ellipse cx="300" cy="114.784" rx="3" ry="3" style="fill: #ef2929; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_125"/><ellipse cx="376" cy="171.04" rx="3" ry="3" style="fill: #ef2929; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_126"/><ellipse cx="452" cy="54.304" rx="3" ry="3" style="fill: #ef2929; fill-opacity: 1.00; stroke: none;" id="ezcGraphCircle_127"/><path d=" M 500.0000,162.0000 L 480.0000,182.0000" style="fill: none; stroke: #eeeeec; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_128"/><path d=" M 480.0000,182.0000 L 100.0000,182.0000" style="fill: none; stroke: #eeeeec; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_129"/><path d=" M 100.0000,182.0000 L 120.0000,162.0000" style="fill: none; stroke: #eeeeec; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_130"/><path d=" M 158.0000,0.0000 L 138.0000,20.0000" style="fill: none; stroke: #eeeeec; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_131"/><path d=" M 138.0000,20.0000 L 138.0000,200.0000" style="fill: none; stroke: #eeeeec; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_132"/><path d=" M 138.0000,200.0000 L 158.0000,180.0000" style="fill: none; stroke: #eeeeec; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_133"/><path d=" M 214.0000,38.0000 L 214.0000,182.0000" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_134"/><path d=" M 214.0000,182.0000 L 234.0000,162.0000" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_135"/><path d=" M 234.0000,18.0000 L 214.0000,38.0000" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_136"/><path d=" M 290.0000,38.0000 L 290.0000,182.0000" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_137"/><path d=" M 290.0000,182.0000 L 310.0000,162.0000" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_138"/><path d=" M 310.0000,18.0000 L 290.0000,38.0000" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_139"/><path d=" M 366.0000,38.0000 L 366.0000,182.0000" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_140"/><path d=" M 366.0000,182.0000 L 386.0000,162.0000" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_141"/><path d=" M 386.0000,18.0000 L 366.0000,38.0000" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_142"/><path d=" M 442.0000,38.0000 L 442.0000,182.0000" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_143"/><path d=" M 442.0000,182.0000 L 462.0000,162.0000" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_144"/><path d=" M 462.0000,18.0000 L 442.0000,38.0000" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_145"/><path d=" M 138.0000,171.9200 L 442.0000,171.9200" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_146"/><path d=" M 442.0000,171.9200 L 462.0000,151.9200" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_147"/><path d=" M 158.0000,151.9200 L 138.0000,171.9200" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_148"/><path d=" M 138.0000,163.2800 L 442.0000,163.2800" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_149"/><path d=" M 442.0000,163.2800 L 462.0000,143.2800" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_150"/><path d=" M 158.0000,143.2800 L 138.0000,163.2800" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_151"/><path d=" M 138.0000,153.2000 L 442.0000,153.2000" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_152"/><path d=" M 442.0000,153.2000 L 462.0000,133.2000" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_153"/><path d=" M 158.0000,133.2000 L 138.0000,153.2000" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_154"/><path d=" M 138.0000,143.1200 L 442.0000,143.1200" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_155"/><path d=" M 442.0000,143.1200 L 462.0000,123.1200" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_156"/><path d=" M 158.0000,123.1200 L 138.0000,143.1200" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_157"/><path d=" M 138.0000,134.4800 L 442.0000,134.4800" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_158"/><path d=" M 442.0000,134.4800 L 462.0000,114.4800" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_159"/><path d=" M 158.0000,114.4800 L 138.0000,134.4800" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_160"/><path d=" M 138.0000,124.4000 L 442.0000,124.4000" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_161"/><path d=" M 442.0000,124.4000 L 462.0000,104.4000" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_162"/><path d=" M 158.0000,104.4000 L 138.0000,124.4000" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_163"/><path d=" M 138.0000,114.3200 L 442.0000,114.3200" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_164"/><path d=" M 442.0000,114.3200 L 462.0000,94.3200" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_165"/><path d=" M 158.0000,94.3200 L 138.0000,114.3200" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_166"/><path d=" M 138.0000,105.6800 L 442.0000,105.6800" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_167"/><path d=" M 442.0000,105.6800 L 462.0000,85.6800" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_168"/><path d=" M 158.0000,85.6800 L 138.0000,105.6800" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_169"/><path d=" M 138.0000,95.6000 L 442.0000,95.6000" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_170"/><path d=" M 442.0000,95.6000 L 462.0000,75.6000" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_171"/><path d=" M 158.0000,75.6000 L 138.0000,95.6000" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_172"/><path d=" M 138.0000,85.5200 L 442.0000,85.5200" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_173"/><path d=" M 442.0000,85.5200 L 462.0000,65.5200" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_174"/><path d=" M 158.0000,65.5200 L 138.0000,85.5200" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_175"/><path d=" M 138.0000,76.8800 L 442.0000,76.8800" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_176"/><path d=" M 442.0000,76.8800 L 462.0000,56.8800" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_177"/><path d=" M 158.0000,56.8800 L 138.0000,76.8800" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_178"/><path d=" M 138.0000,66.8000 L 442.0000,66.8000" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_179"/><path d=" M 442.0000,66.8000 L 462.0000,46.8000" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_180"/><path d=" M 158.0000,46.8000 L 138.0000,66.8000" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_181"/><path d=" M 138.0000,56.7200 L 442.0000,56.7200" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_182"/><path d=" M 442.0000,56.7200 L 462.0000,36.7200" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_183"/><path d=" M 158.0000,36.7200 L 138.0000,56.7200" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_184"/><path d=" M 138.0000,48.0800 L 442.0000,48.0800" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_185"/><path d=" M 442.0000,48.0800 L 462.0000,28.0800" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_186"/><path d=" M 158.0000,28.0800 L 138.0000,48.0800" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 0.47; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_187"/><path d=" M 138.0000,38.0000 L 442.0000,38.0000" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_188"/><path d=" M 442.0000,38.0000 L 462.0000,18.0000" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_189"/><path d=" M 158.0000,18.0000 L 138.0000,38.0000" style="fill: none; stroke: #888a85; stroke-width: 1; stroke-opacity: 1.00; stroke-linecap: round; stroke-linejoin: round;" id="ezcGraphLine_190"/><text id="ezcGraphTextBox_5" x="19" text-length="44.52px" y="15.9" style="font-size: 14px; font-family: sans-serif; fill: #d3d7cf; fill-opacity: 1.00; stroke: none;">Line 1</text><text id="ezcGraphTextBox_7" x="19" text-length="44.52px" y="33.9" style="font-size: 14px; font-family: sans-serif; fill: #d3d7cf; fill-opacity: 1.00; stroke: none;">Line 2</text><text id="ezcGraphTextBox_18" x="183.472" text-length="61.056px" y="196.04" style="font-size: 14px; font-family: sans-serif; fill: #d3d7cf; fill-opacity: 1.00; stroke: none;">sample 2</text><text id="ezcGraphTextBox_23" x="259.472" text-length="61.056px" y="196.04" style="font-size: 14px; font-family: sans-serif; fill: #d3d7cf; fill-opacity: 1.00; stroke: none;">sample 3</text><text id="ezcGraphTextBox_28" x="335.472" text-length="61.056px" y="196.04" style="font-size: 14px; font-family: sans-serif; fill: #d3d7cf; fill-opacity: 1.00; stroke: none;">sample 4</text><text id="ezcGraphTextBox_33" x="411.472" text-length="61.056px" y="196.04" style="font-size: 14px; font-family: sans-serif; fill: #d3d7cf; fill-opacity: 1.00; stroke: none;">sample 5</text><text id="ezcGraphTextBox_34" x="127.172" text-length="8.928px" y="178.04" style="font-size: 14px; font-family: sans-serif; fill: #d3d7cf; fill-opacity: 1.00; stroke: none;">0</text><text id="ezcGraphTextBox_55" x="109.316" text-length="26.784px" y="130.04" style="font-size: 14px; font-family: sans-serif; fill: #d3d7cf; fill-opacity: 1.00; stroke: none;">250</text><text id="ezcGraphTextBox_76" x="109.316" text-length="26.784px" y="82.04" style="font-size: 14px; font-family: sans-serif; fill: #d3d7cf; fill-opacity: 1.00; stroke: none;">500</text><text id="ezcGraphTextBox_97" x="109.316" text-length="26.784px" y="52.04" style="font-size: 14px; font-family: sans-serif; fill: #d3d7cf; fill-opacity: 1.00; stroke: none;">750</text></g></svg>
diff --git a/tests/driver_gd_test.php b/tests/driver_gd_test.php
index 7af57dd..9ab3e95 100644
--- a/tests/driver_gd_test.php
+++ b/tests/driver_gd_test.php
@@ -1899,6 +1899,182 @@ class ezcGraphGdDriverTest extends ezcImageTestCase
2000
);
}
-}
+ public function testGdDriverOptionsPropertyImageFormat()
+ {
+ $options = new ezcGraphGdDriverOptions();
+
+ $this->assertSame(
+ IMG_PNG,
+ $options->imageFormat,
+ 'Wrong default value for property imageFormat in class ezcGraphGdDriverOptions'
+ );
+
+ $options->imageFormat = IMG_JPEG;
+ $this->assertSame(
+ IMG_JPEG,
+ $options->imageFormat,
+ 'Setting property value did not work for property imageFormat in class ezcGraphGdDriverOptions'
+ );
+
+ try
+ {
+ $options->imageFormat = false;
+ }
+ catch( ezcBaseValueException $e )
+ {
+ return true;
+ }
+
+ $this->fail( 'Expected ezcBaseValueException.' );
+ }
+
+ public function testGdDriverOptionsPropertyJpegQuality()
+ {
+ $options = new ezcGraphGdDriverOptions();
+
+ $this->assertSame(
+ 70,
+ $options->jpegQuality,
+ 'Wrong default value for property jpegQuality in class ezcGraphGdDriverOptions'
+ );
+
+ $options->jpegQuality = 100;
+ $this->assertSame(
+ 100,
+ $options->jpegQuality,
+ 'Setting property value did not work for property jpegQuality in class ezcGraphGdDriverOptions'
+ );
+ }
+
+ public function testGdDriverOptionsPropertyDetail()
+ {
+ $options = new ezcGraphGdDriverOptions();
+
+ $this->assertSame(
+ 1,
+ $options->detail,
+ 'Wrong default value for property detail in class ezcGraphGdDriverOptions'
+ );
+
+ $options->detail = 5;
+ $this->assertSame(
+ 5,
+ $options->detail,
+ 'Setting property value did not work for property detail in class ezcGraphGdDriverOptions'
+ );
+ }
+
+ public function testGdDriverOptionsPropertySupersampling()
+ {
+ $options = new ezcGraphGdDriverOptions();
+
+ $this->assertSame(
+ 2,
+ $options->supersampling,
+ 'Wrong default value for property supersampling in class ezcGraphGdDriverOptions'
+ );
+
+ $options->supersampling = 4;
+ $this->assertSame(
+ 4,
+ $options->supersampling,
+ 'Setting property value did not work for property supersampling in class ezcGraphGdDriverOptions'
+ );
+ }
+
+ public function testGdDriverOptionsPropertyBackground()
+ {
+ $options = new ezcGraphGdDriverOptions();
+
+ $this->assertSame(
+ false,
+ $options->background,
+ 'Wrong default value for property background in class ezcGraphGdDriverOptions'
+ );
+
+ $options->background = $file = dirname( __FILE__ ) . '/data/jpeg.jpg';
+ $this->assertSame(
+ $file,
+ $options->background,
+ 'Setting property value did not work for property background in class ezcGraphGdDriverOptions'
+ );
+
+ try
+ {
+ $options->background = 'foo';
+ }
+ catch( ezcBaseValueException $e )
+ {
+ return true;
+ }
+
+ $this->fail( 'Expected ezcBaseValueException.' );
+ }
+
+ public function testGdDriverOptionsPropertyResampleFunction()
+ {
+ $options = new ezcGraphGdDriverOptions();
+
+ $this->assertSame(
+ 'imagecopyresampled',
+ $options->resampleFunction,
+ 'Wrong default value for property resampleFunction in class ezcGraphGdDriverOptions'
+ );
+
+ $options->resampleFunction = 'imagecopyresized';
+ $this->assertSame(
+ 'imagecopyresized',
+ $options->resampleFunction,
+ 'Setting property value did not work for property resampleFunction in class ezcGraphGdDriverOptions'
+ );
+
+ try
+ {
+ $options->resampleFunction = 'foo';
+ }
+ catch( ezcBaseValueException $e )
+ {
+ return true;
+ }
+
+ $this->fail( 'Expected ezcBaseValueException.' );
+ }
+
+ public function testGdDriverOptionsPropertyForceNativeTTF()
+ {
+ $options = new ezcGraphGdDriverOptions();
+
+ $this->assertSame(
+ false,
+ $options->forceNativeTTF,
+ 'Wrong default value for property forceNativeTTF in class ezcGraphGdDriverOptions'
+ );
+
+ $options->forceNativeTTF = true;
+ $this->assertSame(
+ true,
+ $options->forceNativeTTF,
+ 'Setting property value did not work for property forceNativeTTF in class ezcGraphGdDriverOptions'
+ );
+ }
+
+ public function testGdDriverOptionsPropertyImageMapResolution()
+ {
+ $options = new ezcGraphGdDriverOptions();
+
+ $this->assertSame(
+ 10,
+ $options->imageMapResolution,
+ 'Wrong default value for property imageMapResolution in class ezcGraphGdDriverOptions'
+ );
+
+ $options->imageMapResolution = 5;
+ $this->assertSame(
+ 5,
+ $options->imageMapResolution,
+ 'Setting property value did not work for property imageMapResolution in class ezcGraphGdDriverOptions'
+ );
+ }
+}
?>
diff --git a/tests/driver_ming_test.php b/tests/driver_ming_test.php
index c5ca5c8..4b14960 100644
--- a/tests/driver_ming_test.php
+++ b/tests/driver_ming_test.php
@@ -1414,6 +1414,41 @@ class ezcGraphMingDriverTest extends ezcTestCase
$this->basePath . 'compare/' . __CLASS__ . '_' . __FUNCTION__ . '.swf'
);
}
-}
+ public function testMingDriverOptionsPropertyCompression()
+ {
+ $options = new ezcGraphMingDriverOptions();
+
+ $this->assertSame(
+ 9,
+ $options->compression,
+ 'Wrong default value for property compression in class ezcGraphMingDriverOptions'
+ );
+
+ $options->compression = 4;
+ $this->assertSame(
+ 4,
+ $options->compression,
+ 'Setting property value did not work for property compression in class ezcGraphMingDriverOptions'
+ );
+ }
+
+ public function testMingDriverOptionsPropertyCircleResolution()
+ {
+ $options = new ezcGraphMingDriverOptions();
+
+ $this->assertSame(
+ 2.,
+ $options->circleResolution,
+ 'Wrong default value for property circleResolution in class ezcGraphMingDriverOptions'
+ );
+
+ $options->circleResolution = 5.;
+ $this->assertSame(
+ 5.,
+ $options->circleResolution,
+ 'Setting property value did not work for property circleResolution in class ezcGraphMingDriverOptions'
+ );
+ }
+}
?>
diff --git a/tests/driver_options_test.php b/tests/driver_options_test.php
new file mode 100644
index 0000000..d9f35ac
--- /dev/null
+++ b/tests/driver_options_test.php
@@ -0,0 +1,112 @@
+<?php
+/**
+ * ezcGraphDriverOptionsTest
+ *
+ * @package Graph
+ * @version //autogen//
+ * @subpackage Tests
+ * @copyright Copyright (C) 2005, 2006 eZ systems as. All rights reserved.
+ * @license http://ez.no/licenses/new_bsd New BSD License
+ */
+
+/**
+ * Tests for ezcGraph class.
+ *
+ * @package ImageAnalysis
+ * @subpackage Tests
+ */
+class ezcGraphDriverOptionsTest extends ezcImageTestCase
+{
+
+ public static function suite()
+ {
+ return new PHPUnit_Framework_TestSuite( "ezcGraphDriverOptionsTest" );
+ }
+
+ public function testDriverOptionsPropertyWidth()
+ {
+ $options = new ezcGraphSvgDriverOptions();
+
+ $this->assertSame(
+ false,
+ $options->width,
+ 'Wrong default value for property width in class ezcGraphSvgDriverOptions'
+ );
+
+ $options->width = 100;
+ $this->assertSame(
+ 100,
+ $options->width,
+ 'Setting property value did not work for property width in class ezcGraphSvgDriverOptions'
+ );
+ }
+
+ public function testDriverOptionsPropertyHeight()
+ {
+ $options = new ezcGraphSvgDriverOptions();
+
+ $this->assertSame(
+ false,
+ $options->height,
+ 'Wrong default value for property height in class ezcGraphSvgDriverOptions'
+ );
+
+ $options->height = 100;
+ $this->assertSame(
+ 100,
+ $options->height,
+ 'Setting property value did not work for property height in class ezcGraphSvgDriverOptions'
+ );
+ }
+
+ public function testDriverOptionsPropertyShadeCircularArc()
+ {
+ $options = new ezcGraphSvgDriverOptions();
+
+ $this->assertSame(
+ .5,
+ $options->shadeCircularArc,
+ 'Wrong default value for property shadeCircularArc in class ezcGraphSvgDriverOptions'
+ );
+
+ $options->shadeCircularArc = .2;
+ $this->assertSame(
+ .2,
+ $options->shadeCircularArc,
+ 'Setting property value did not work for property shadeCircularArc in class ezcGraphSvgDriverOptions'
+ );
+ }
+
+ public function testDriverOptionsPropertyFont()
+ {
+ $options = new ezcGraphSvgDriverOptions();
+
+ $this->assertSame(
+ 'ezcGraphFontOptions',
+ get_class( $options->font ),
+ 'Wrong default value for property font in class ezcGraphSvgDriverOptions'
+ );
+
+ $fontOptions = new ezcGraphFontOptions();
+ $fontOptions->path = dirname( __FILE__ ) . '/data/font2.ttf';
+
+ $options->font = $fontOptions;
+ $this->assertSame(
+ $fontOptions,
+ $options->font,
+ 'Setting property value did not work for property font in class ezcGraphSvgDriverOptions'
+ );
+
+ try
+ {
+ $options->font = false;
+ }
+ catch( ezcBaseValueException $e )
+ {
+ return true;
+ }
+
+ $this->fail( 'Expected ezcBaseValueException.' );
+ }
+}
+?>
diff --git a/tests/driver_svg_test.php b/tests/driver_svg_test.php
index 9b47683..84ec27e 100644
--- a/tests/driver_svg_test.php
+++ b/tests/driver_svg_test.php
@@ -1195,6 +1195,291 @@ class ezcGraphSvgDriverTest extends ezcTestCase
$this->fail( 'Expected ezcGraphFontRenderingException.' );
}
-}
+ public function testSvgDriverOptionsPropertyAssumedNumericCharacterWidth()
+ {
+ $options = new ezcGraphSvgDriverOptions();
+
+ $this->assertSame(
+ .62,
+ $options->assumedNumericCharacterWidth,
+ 'Wrong default value for property assumedNumericCharacterWidth in class ezcGraphSvgDriverOptions'
+ );
+
+ $options->assumedNumericCharacterWidth = .7;
+ $this->assertSame(
+ .7,
+ $options->assumedNumericCharacterWidth,
+ 'Setting property value did not work for property assumedNumericCharacterWidth in class ezcGraphSvgDriverOptions'
+ );
+ }
+
+ public function testSvgDriverOptionsPropertyAssumedTextCharacterWidth()
+ {
+ $options = new ezcGraphSvgDriverOptions();
+
+ $this->assertSame(
+ .53,
+ $options->assumedTextCharacterWidth,
+ 'Wrong default value for property assumedTextCharacterWidth in class ezcGraphSvgDriverOptions'
+ );
+
+ $options->assumedTextCharacterWidth = .7;
+ $this->assertSame(
+ .7,
+ $options->assumedTextCharacterWidth,
+ 'Setting property value did not work for property assumedTextCharacterWidth in class ezcGraphSvgDriverOptions'
+ );
+ }
+
+ public function testSvgDriverOptionsPropertyStrokeLineCap()
+ {
+ $options = new ezcGraphSvgDriverOptions();
+
+ $this->assertSame(
+ 'round',
+ $options->strokeLineCap,
+ 'Wrong default value for property strokeLineCap in class ezcGraphSvgDriverOptions'
+ );
+
+ $options->strokeLineCap = 'butt';
+ $this->assertSame(
+ 'butt',
+ $options->strokeLineCap,
+ 'Setting property value did not work for property strokeLineCap in class ezcGraphSvgDriverOptions'
+ );
+
+ try
+ {
+ $options->strokeLineCap = false;
+ }
+ catch( ezcBaseValueException $e )
+ {
+ return true;
+ }
+
+ $this->fail( 'Expected ezcBaseValueException.' );
+ }
+
+ public function testSvgDriverOptionsPropertyStrokeLineJoin()
+ {
+ $options = new ezcGraphSvgDriverOptions();
+
+ $this->assertSame(
+ 'round',
+ $options->strokeLineJoin,
+ 'Wrong default value for property strokeLineJoin in class ezcGraphSvgDriverOptions'
+ );
+
+ $options->strokeLineJoin = 'butt';
+ $this->assertSame(
+ 'butt',
+ $options->strokeLineJoin,
+ 'Setting property value did not work for property strokeLineJoin in class ezcGraphSvgDriverOptions'
+ );
+
+ try
+ {
+ $options->strokeLineJoin = false;
+ }
+ catch( ezcBaseValueException $e )
+ {
+ return true;
+ }
+
+ $this->fail( 'Expected ezcBaseValueException.' );
+ }
+
+ public function testSvgDriverOptionsPropertyShapeRendering()
+ {
+ $options = new ezcGraphSvgDriverOptions();
+
+ $this->assertSame(
+ 'geometricPrecision',
+ $options->shapeRendering,
+ 'Wrong default value for property shapeRendering in class ezcGraphSvgDriverOptions'
+ );
+
+ $options->shapeRendering = 'optimizeSpeed';
+ $this->assertSame(
+ 'optimizeSpeed',
+ $options->shapeRendering,
+ 'Setting property value did not work for property shapeRendering in class ezcGraphSvgDriverOptions'
+ );
+
+ try
+ {
+ $options->shapeRendering = false;
+ }
+ catch( ezcBaseValueException $e )
+ {
+ return true;
+ }
+
+ $this->fail( 'Expected ezcBaseValueException.' );
+ }
+
+ public function testSvgDriverOptionsPropertyColorRendering()
+ {
+ $options = new ezcGraphSvgDriverOptions();
+
+ $this->assertSame(
+ 'optimizeQuality',
+ $options->colorRendering,
+ 'Wrong default value for property colorRendering in class ezcGraphSvgDriverOptions'
+ );
+
+ $options->colorRendering = 'optimizeSpeed';
+ $this->assertSame(
+ 'optimizeSpeed',
+ $options->colorRendering,
+ 'Setting property value did not work for property colorRendering in class ezcGraphSvgDriverOptions'
+ );
+
+ try
+ {
+ $options->colorRendering = false;
+ }
+ catch( ezcBaseValueException $e )
+ {
+ return true;
+ }
+
+ $this->fail( 'Expected ezcBaseValueException.' );
+ }
+
+ public function testSvgDriverOptionsPropertyTextRendering()
+ {
+ $options = new ezcGraphSvgDriverOptions();
+
+ $this->assertSame(
+ 'optimizeLegibility',
+ $options->textRendering,
+ 'Wrong default value for property textRendering in class ezcGraphSvgDriverOptions'
+ );
+
+ $options->textRendering = 'optimizeSpeed';
+ $this->assertSame(
+ 'optimizeSpeed',
+ $options->textRendering,
+ 'Setting property value did not work for property textRendering in class ezcGraphSvgDriverOptions'
+ );
+
+ try
+ {
+ $options->textRendering = false;
+ }
+ catch( ezcBaseValueException $e )
+ {
+ return true;
+ }
+
+ $this->fail( 'Expected ezcBaseValueException.' );
+ }
+
+ public function testSvgDriverOptionsPropertyTemplateDocument()
+ {
+ $options = new ezcGraphSvgDriverOptions();
+
+ $this->assertSame(
+ false,
+ $options->templateDocument,
+ 'Wrong default value for property templateDocument in class ezcGraphSvgDriverOptions'
+ );
+
+ $options->templateDocument = $file = dirname( __FILE__ ) . '/data/template.svg';
+ $this->assertSame(
+ $file,
+ $options->templateDocument,
+ 'Setting property value did not work for property templateDocument in class ezcGraphSvgDriverOptions'
+ );
+
+ try
+ {
+ $options->templateDocument = false;
+ }
+ catch( ezcBaseFileNotFoundException $e )
+ {
+ return true;
+ }
+
+ $this->fail( 'Expected ezcBaseFileNotFoundException.' );
+ }
+
+ public function testSvgDriverOptionsPropertyInsertIntoGroup()
+ {
+ $options = new ezcGraphSvgDriverOptions();
+
+ $this->assertSame(
+ false,
+ $options->insertIntoGroup,
+ 'Wrong default value for property insertIntoGroup in class ezcGraphSvgDriverOptions'
+ );
+
+ $options->insertIntoGroup = 'group';
+ $this->assertSame(
+ 'group',
+ $options->insertIntoGroup,
+ 'Setting property value did not work for property insertIntoGroup in class ezcGraphSvgDriverOptions'
+ );
+
+ try
+ {
+ $options->insertIntoGroup = false;
+ }
+ catch( ezcBaseValueException $e )
+ {
+ return true;
+ }
+
+ $this->fail( 'Expected ezcBaseValueException.' );
+ }
+
+ public function testSvgDriverOptionsPropertyGraphOffset()
+ {
+ $options = new ezcGraphSvgDriverOptions();
+
+ $this->assertEquals(
+ new ezcGraphCoordinate( 0, 0 ),
+ $options->graphOffset,
+ 'Wrong default value for property graphOffset in class ezcGraphSvgDriverOptions'
+ );
+
+ $options->graphOffset = $coord = new ezcGraphCoordinate( 10, 10 );
+ $this->assertSame(
+ $coord,
+ $options->graphOffset,
+ 'Setting property value did not work for property graphOffset in class ezcGraphSvgDriverOptions'
+ );
+
+ try
+ {
+ $options->graphOffset = false;
+ }
+ catch( ezcBaseValueException $e )
+ {
+ return true;
+ }
+
+ $this->fail( 'Expected ezcBaseValueException.' );
+ }
+
+ public function testSvgDriverOptionsPropertyIdPrefix()
+ {
+ $options = new ezcGraphSvgDriverOptions();
+
+ $this->assertSame(
+ 'ezcGraph',
+ $options->idPrefix,
+ 'Wrong default value for property idPrefix in class ezcGraphSvgDriverOptions'
+ );
+
+ $options->idPrefix = 'custom';
+ $this->assertSame(
+ 'custom',
+ $options->idPrefix,
+ 'Setting property value did not work for property idPrefix in class ezcGraphSvgDriverOptions'
+ );
+ }
+}
?>
diff --git a/tests/element_options_test.php b/tests/element_options_test.php
new file mode 100644
index 0000000..60c1b25
--- /dev/null
+++ b/tests/element_options_test.php
@@ -0,0 +1,702 @@
+<?php
+/**
+ * ezcGraphElementOptionsTest
+ *
+ * @package Graph
+ * @version //autogen//
+ * @subpackage Tests
+ * @copyright Copyright (C) 2005, 2006 eZ systems as. All rights reserved.
+ * @license http://ez.no/licenses/new_bsd New BSD License
+ */
+
+/**
+ * Tests for ezcGraph class.
+ *
+ * @package ImageAnalysis
+ * @subpackage Tests
+ */
+class ezcGraphElementOptionsTest extends ezcImageTestCase
+{
+
+ public static function suite()
+ {
+ return new PHPUnit_Framework_TestSuite( "ezcGraphElementOptionsTest" );
+ }
+
+
+ public function testChartElementPropertyTitle()
+ {
+ $options = new ezcGraphChartElementBackground();
+
+ $this->assertSame(
+ false,
+ $options->title,
+ 'Wrong default value for property title in class ezcGraphChartElementBackground'
+ );
+
+ $options->title = 'Title';
+ $this->assertSame(
+ 'Title',
+ $options->title,
+ 'Setting property value did not work for property title in class ezcGraphChartElementBackground'
+ );
+ }
+
+ public function testChartElementPropertyBackground()
+ {
+ $options = new ezcGraphChartElementBackground();
+
+ $this->assertSame(
+ false,
+ $options->background,
+ 'Wrong default value for property background in class ezcGraphChartElementBackground'
+ );
+
+ $options->background = $color = ezcGraphColor::fromHex( '#FFFFFF' );
+ $this->assertSame(
+ $color,
+ $options->background,
+ 'Setting property value did not work for property background in class ezcGraphChartElementBackground'
+ );
+
+ try
+ {
+ $options->background = false;
+ }
+ catch( ezcGraphUnknownColorDefinitionException $e )
+ {
+ return true;
+ }
+
+ $this->fail( 'Expected ezcGraphUnknownColorDefinitionException.' );
+ }
+
+ public function testChartElementPropertyBoundings()
+ {
+ $options = new ezcGraphChartElementBackground();
+
+ $this->assertSame(
+ 'ezcGraphBoundings',
+ get_class( $options->boundings ),
+ 'Wrong default value for property boundings in class ezcGraphChartElementBackground'
+ );
+ }
+
+ public function testChartElementPropertyBorder()
+ {
+ $options = new ezcGraphChartElementBackground();
+
+ $this->assertSame(
+ false,
+ $options->border,
+ 'Wrong default value for property border in class ezcGraphChartElementBackground'
+ );
+
+ $options->border = $color = ezcGraphColor::fromHex( '#FFFFFF' );
+ $this->assertSame(
+ $color,
+ $options->border,
+ 'Setting property value did not work for property border in class ezcGraphChartElementBackground'
+ );
+
+ try
+ {
+ $options->border = false;
+ }
+ catch( ezcGraphUnknownColorDefinitionException $e )
+ {
+ return true;
+ }
+
+ $this->fail( 'Expected ezcGraphUnknownColorDefinitionException.' );
+ }
+
+ public function testChartElementPropertyPadding()
+ {
+ $options = new ezcGraphChartElementBackground();
+
+ $this->assertSame(
+ 0,
+ $options->padding,
+ 'Wrong default value for property padding in class ezcGraphChartElementBackground'
+ );
+
+ $options->padding = 1;
+ $this->assertSame(
+ 1,
+ $options->padding,
+ 'Setting property value did not work for property padding in class ezcGraphChartElementBackground'
+ );
+ }
+
+ public function testChartElementPropertyMargin()
+ {
+ $options = new ezcGraphChartElementBackground();
+
+ $this->assertSame(
+ 0,
+ $options->margin,
+ 'Wrong default value for property margin in class ezcGraphChartElementBackground'
+ );
+
+ $options->margin = 1;
+ $this->assertSame(
+ 1,
+ $options->margin,
+ 'Setting property value did not work for property margin in class ezcGraphChartElementBackground'
+ );
+ }
+
+ public function testChartElementPropertyBorderWidth()
+ {
+ $options = new ezcGraphChartElementBackground();
+
+ $this->assertSame(
+ 0,
+ $options->borderWidth,
+ 'Wrong default value for property borderWidth in class ezcGraphChartElementBackground'
+ );
+
+ $options->borderWidth = 1;
+ $this->assertSame(
+ 1,
+ $options->borderWidth,
+ 'Setting property value did not work for property borderWidth in class ezcGraphChartElementBackground'
+ );
+ }
+
+ public function testChartElementPropertyPosition()
+ {
+ $options = new ezcGraphChartElementBackground();
+
+ $this->assertSame(
+ ezcGraph::LEFT,
+ $options->position,
+ 'Wrong default value for property position in class ezcGraphChartElementBackground'
+ );
+
+ $options->position = ezcGraph::RIGHT;
+ $this->assertSame(
+ ezcGraph::RIGHT,
+ $options->position,
+ 'Setting property value did not work for property position in class ezcGraphChartElementBackground'
+ );
+
+ try
+ {
+ $options->position = false;
+ }
+ catch( ezcBaseValueException $e )
+ {
+ return true;
+ }
+
+ $this->fail( 'Expected ezcBaseValueException.' );
+ }
+
+ public function testChartElementPropertyMaxTitleHeight()
+ {
+ $options = new ezcGraphChartElementBackground();
+
+ $this->assertSame(
+ 16,
+ $options->maxTitleHeight,
+ 'Wrong default value for property maxTitleHeight in class ezcGraphChartElementBackground'
+ );
+
+ $options->maxTitleHeight = 20;
+ $this->assertSame(
+ 20,
+ $options->maxTitleHeight,
+ 'Setting property value did not work for property maxTitleHeight in class ezcGraphChartElementBackground'
+ );
+ }
+
+ public function testChartElementPropertyPortraitTitleSize()
+ {
+ $options = new ezcGraphChartElementBackground();
+
+ $this->assertSame(
+ .15,
+ $options->portraitTitleSize,
+ 'Wrong default value for property portraitTitleSize in class ezcGraphChartElementBackground'
+ );
+
+ $options->portraitTitleSize = .5;
+ $this->assertSame(
+ .5,
+ $options->portraitTitleSize,
+ 'Setting property value did not work for property portraitTitleSize in class ezcGraphChartElementBackground'
+ );
+ }
+
+ public function testChartElementPropertyLandscapeTitleSize()
+ {
+ $options = new ezcGraphChartElementBackground();
+
+ $this->assertSame(
+ .2,
+ $options->landscapeTitleSize,
+ 'Wrong default value for property landscapeTitleSize in class ezcGraphChartElementBackground'
+ );
+
+ $options->landscapeTitleSize = .5;
+ $this->assertSame(
+ .5,
+ $options->landscapeTitleSize,
+ 'Setting property value did not work for property landscapeTitleSize in class ezcGraphChartElementBackground'
+ );
+ }
+
+ public function testChartElementPropertyFont()
+ {
+ $options = new ezcGraphChartElementBackground();
+
+ $this->assertSame(
+ 'ezcGraphFontOptions',
+ get_class( $options->font ),
+ 'Wrong default value for property font in class ezcGraphChartElementBackground'
+ );
+
+ $fontOptions = new ezcGraphFontOptions();
+ $fontOptions->path = dirname( __FILE__ ) . '/data/font2.ttf';
+
+ $options->font = $fontOptions;
+ $this->assertSame(
+ $fontOptions,
+ $options->font,
+ 'Setting property value did not work for property font in class ezcGraphChartElementBackground'
+ );
+
+ try
+ {
+ $options->font = false;
+ }
+ catch( ezcBaseValueException $e )
+ {
+ return true;
+ }
+
+ $this->fail( 'Expected ezcBaseValueException.' );
+ }
+
+ public function testChartElementPropertyFontCloned()
+ {
+ $options = new ezcGraphChartElementBackground();
+
+ $this->assertSame(
+ false,
+ $options->fontCloned,
+ 'Wrong default value for property fontCloned in class ezcGraphChartElementBackground'
+ );
+ }
+
+ public function testChartElementBackgroundPropertyImage()
+ {
+ $options = new ezcGraphChartElementBackground();
+
+ $this->assertSame(
+ false,
+ $options->image,
+ 'Wrong default value for property image in class ezcGraphChartElementBackground'
+ );
+
+ $options->image = $file = dirname( __FILE__ ) . '/data/gif.gif';
+ $this->assertSame(
+ $file,
+ $options->image,
+ 'Setting property value did not work for property image in class ezcGraphChartElementBackground'
+ );
+
+ try
+ {
+ $options->image = false;
+ }
+ catch( ezcBaseFileNotFoundException $e )
+ {
+ return true;
+ }
+
+ $this->fail( 'Expected ezcBaseFileNotFoundException.' );
+ }
+
+ public function testChartElementBackgroundPropertyRepeat()
+ {
+ $options = new ezcGraphChartElementBackground();
+
+ $this->assertSame(
+ ezcGraph::NO_REPEAT,
+ $options->repeat,
+ 'Wrong default value for property repeat in class ezcGraphChartElementBackground'
+ );
+
+ $options->repeat = ezcGraph::VERTICAL;
+ $this->assertSame(
+ ezcGraph::VERTICAL,
+ $options->repeat,
+ 'Setting property value did not work for property repeat in class ezcGraphChartElementBackground'
+ );
+
+ try
+ {
+ $options->repeat = 42;
+ }
+ catch( ezcBaseValueException $e )
+ {
+ return true;
+ }
+
+ $this->fail( 'Expected ezcBaseValueException.' );
+ }
+
+ public function testChartElementLegendPropertyPortraitSize()
+ {
+ $options = new ezcGraphChartElementLegend();
+
+ $this->assertSame(
+ .2,
+ $options->portraitSize,
+ 'Wrong default value for property portraitSize in class ezcGraphChartElementLegend'
+ );
+
+ $options->portraitSize = .5;
+ $this->assertSame(
+ .5,
+ $options->portraitSize,
+ 'Setting property value did not work for property portraitSize in class ezcGraphChartElementLegend'
+ );
+ }
+
+ public function testChartElementLegendPropertyLandscapeSize()
+ {
+ $options = new ezcGraphChartElementLegend();
+
+ $this->assertSame(
+ .1,
+ $options->landscapeSize,
+ 'Wrong default value for property landscapeSize in class ezcGraphChartElementLegend'
+ );
+
+ $options->landscapeSize = .5;
+ $this->assertSame(
+ .5,
+ $options->landscapeSize,
+ 'Setting property value did not work for property landscapeSize in class ezcGraphChartElementLegend'
+ );
+ }
+
+ public function testChartElementLegendPropertySymbolSize()
+ {
+ $options = new ezcGraphChartElementLegend();
+
+ $this->assertSame(
+ 14,
+ $options->symbolSize,
+ 'Wrong default value for property symbolSize in class ezcGraphChartElementLegend'
+ );
+
+ $options->symbolSize = 20;
+ $this->assertSame(
+ 20,
+ $options->symbolSize,
+ 'Setting property value did not work for property symbolSize in class ezcGraphChartElementLegend'
+ );
+ }
+
+ public function testChartElementLegendPropertyMinimumSymbolSize()
+ {
+ $options = new ezcGraphChartElementLegend();
+
+ $this->assertSame(
+ .05,
+ $options->minimumSymbolSize,
+ 'Wrong default value for property minimumSymbolSize in class ezcGraphChartElementLegend'
+ );
+
+ $options->minimumSymbolSize = .1;
+ $this->assertSame(
+ .1,
+ $options->minimumSymbolSize,
+ 'Setting property value did not work for property minimumSymbolSize in class ezcGraphChartElementLegend'
+ );
+ }
+
+ public function testChartElementLegendPropertySpacing()
+ {
+ $options = new ezcGraphChartElementLegend();
+
+ $this->assertSame(
+ 2,
+ $options->spacing,
+ 'Wrong default value for property spacing in class ezcGraphChartElementLegend'
+ );
+
+ $options->spacing = 5;
+ $this->assertSame(
+ 5,
+ $options->spacing,
+ 'Setting property value did not work for property spacing in class ezcGraphChartElementLegend'
+ );
+ }
+
+ public function testChartElementAxisPropertyNullPosition()
+ {
+ $options = new ezcGraphChartElementNumericAxis();
+
+ $this->assertSame(
+ false,
+ $options->nullPosition,
+ 'Wrong default value for property nullPosition in class ezcGraphChartElementNumericAxis'
+ );
+
+ $options->nullPosition = .5;
+ $this->assertSame(
+ .5,
+ $options->nullPosition,
+ 'Setting property value did not work for property nullPosition in class ezcGraphChartElementNumericAxis'
+ );
+ }
+
+ public function testChartElementAxisPropertyAxisSpace()
+ {
+ $options = new ezcGraphChartElementNumericAxis();
+
+ $this->assertSame(
+ .1,
+ $options->axisSpace,
+ 'Wrong default value for property axisSpace in class ezcGraphChartElementNumericAxis'
+ );
+
+ $options->axisSpace = .2;
+ $this->assertSame(
+ .2,
+ $options->axisSpace,
+ 'Setting property value did not work for property axisSpace in class ezcGraphChartElementNumericAxis'
+ );
+ }
+
+ public function testChartElementAxisPropertyMajorGrid()
+ {
+ $options = new ezcGraphChartElementNumericAxis();
+
+ $this->assertSame(
+ false,
+ $options->majorGrid,
+ 'Wrong default value for property majorGrid in class ezcGraphChartElementNumericAxis'
+ );
+
+ $options->majorGrid = $color = ezcGraphColor::fromHex( '#FFFFFF' );
+ $this->assertSame(
+ $color,
+ $options->majorGrid,
+ 'Setting property value did not work for property majorGrid in class ezcGraphChartElementNumericAxis'
+ );
+
+ try
+ {
+ $options->majorGrid = false;
+ }
+ catch( ezcGraphUnknownColorDefinitionException $e )
+ {
+ return true;
+ }
+
+ $this->fail( 'Expected ezcGraphUnknownColorDefinitionException.' );
+ }
+
+ public function testChartElementAxisPropertyMinorGrid()
+ {
+ $options = new ezcGraphChartElementNumericAxis();
+
+ $this->assertSame(
+ false,
+ $options->minorGrid,
+ 'Wrong default value for property minorGrid in class ezcGraphChartElementNumericAxis'
+ );
+
+ $options->minorGrid = $color = ezcGraphColor::fromHex( '#FFFFFF' );
+ $this->assertSame(
+ $color,
+ $options->minorGrid,
+ 'Setting property value did not work for property minorGrid in class ezcGraphChartElementNumericAxis'
+ );
+
+ try
+ {
+ $options->minorGrid = false;
+ }
+ catch( ezcGraphUnknownColorDefinitionException $e )
+ {
+ return true;
+ }
+
+ $this->fail( 'Expected ezcGraphUnknownColorDefinitionException.' );
+ }
+
+ public function testChartElementAxisPropertyMajorStep()
+ {
+ $options = new ezcGraphChartElementNumericAxis();
+
+ $this->assertSame(
+ false,
+ $options->majorStep,
+ 'Wrong default value for property majorStep in class ezcGraphChartElementNumericAxis'
+ );
+
+ $options->majorStep = 1.;
+ $this->assertSame(
+ 1.,
+ $options->majorStep,
+ 'Setting property value did not work for property majorStep in class ezcGraphChartElementNumericAxis'
+ );
+
+ try
+ {
+ $options->majorStep = -1.;
+ }
+ catch( ezcBaseValueException $e )
+ {
+ return true;
+ }
+
+ $this->fail( 'Expected ezcBaseValueException.' );
+ }
+
+ public function testChartElementAxisPropertyMinorStep()
+ {
+ $options = new ezcGraphChartElementNumericAxis();
+
+ $this->assertSame(
+ false,
+ $options->minorStep,
+ 'Wrong default value for property minorStep in class ezcGraphChartElementNumericAxis'
+ );
+
+ $options->minorStep = 1.;
+ $this->assertSame(
+ 1.,
+ $options->minorStep,
+ 'Setting property value did not work for property minorStep in class ezcGraphChartElementNumericAxis'
+ );
+
+ try
+ {
+ $options->minorStep = -1.;
+ }
+ catch( ezcBaseValueException $e )
+ {
+ return true;
+ }
+
+ $this->fail( 'Expected ezcBaseValueException.' );
+ }
+
+ public function testChartElementAxisPropertyFormatString()
+ {
+ $options = new ezcGraphChartElementNumericAxis();
+
+ $this->assertSame(
+ '%s',
+ $options->formatString,
+ 'Wrong default value for property formatString in class ezcGraphChartElementNumericAxis'
+ );
+
+ $options->formatString = '[%s]';
+ $this->assertSame(
+ '[%s]',
+ $options->formatString,
+ 'Setting property value did not work for property formatString in class ezcGraphChartElementNumericAxis'
+ );
+ }
+
+ public function testChartElementAxisPropertyLabel()
+ {
+ $options = new ezcGraphChartElementNumericAxis();
+
+ $this->assertSame(
+ false,
+ $options->label,
+ 'Wrong default value for property label in class ezcGraphChartElementNumericAxis'
+ );
+
+ $options->label = 'Axis';
+ $this->assertSame(
+ 'Axis',
+ $options->label,
+ 'Setting property value did not work for property label in class ezcGraphChartElementNumericAxis'
+ );
+ }
+
+ public function testChartElementAxisPropertyLabelSize()
+ {
+ $options = new ezcGraphChartElementNumericAxis();
+
+ $this->assertSame(
+ 14,
+ $options->labelSize,
+ 'Wrong default value for property labelSize in class ezcGraphChartElementNumericAxis'
+ );
+
+ $options->labelSize = 20;
+ $this->assertSame(
+ 20,
+ $options->labelSize,
+ 'Setting property value did not work for property labelSize in class ezcGraphChartElementNumericAxis'
+ );
+ }
+
+ public function testChartElementAxisPropertyLabelMargin()
+ {
+ $options = new ezcGraphChartElementNumericAxis();
+
+ $this->assertSame(
+ 2,
+ $options->labelMargin,
+ 'Wrong default value for property labelMargin in class ezcGraphChartElementNumericAxis'
+ );
+
+ $options->labelMargin = 1;
+ $this->assertSame(
+ 1,
+ $options->labelMargin,
+ 'Setting property value did not work for property labelMargin in class ezcGraphChartElementNumericAxis'
+ );
+ }
+
+ public function testChartElementAxisPropertyMaxArrowHeadSize()
+ {
+ $options = new ezcGraphChartElementNumericAxis();
+
+ $this->assertSame(
+ 8,
+ $options->maxArrowHeadSize,
+ 'Wrong default value for property maxArrowHeadSize in class ezcGraphChartElementNumericAxis'
+ );
+
+ $options->maxArrowHeadSize = 10;
+ $this->assertSame(
+ 10,
+ $options->maxArrowHeadSize,
+ 'Setting property value did not work for property maxArrowHeadSize in class ezcGraphChartElementNumericAxis'
+ );
+ }
+
+ public function testChartElementTextPropertyMaxHeight()
+ {
+ $options = new ezcGraphChartElementText();
+
+ $this->assertSame(
+ 0.1,
+ $options->maxHeight,
+ 'Wrong default value for property maxHeight in class ezcGraphChartElementText'
+ );
+
+ $options->maxHeight = .2;
+ $this->assertSame(
+ .2,
+ $options->maxHeight,
+ 'Setting property value did not work for property maxHeight in class ezcGraphChartElementText'
+ );
+ }
+}
+?>
diff --git a/tests/font_test.php b/tests/font_test.php
index 1c8efbd..896027d 100644
--- a/tests/font_test.php
+++ b/tests/font_test.php
@@ -170,6 +170,348 @@ class ezcGraphFontTest extends ezcTestCase
$this->fail( 'Expected ezcGraphUnknownFontTypeException.' );
}
-}
+ public function testFontOptionsPropertyName()
+ {
+ $options = new ezcGraphFontOptions();
+
+ $this->assertSame(
+ 'sans-serif',
+ $options->name,
+ 'Wrong default value for property name in class ezcGraphFontOptions'
+ );
+
+ $options->name = 'serif';
+ $this->assertSame(
+ 'serif',
+ $options->name,
+ 'Setting property value did not work for property name in class ezcGraphFontOptions'
+ );
+ }
+
+ public function testFontOptionsPropertyPath()
+ {
+ $options = new ezcGraphFontOptions();
+
+ $this->assertSame(
+ dirname( __FILE__ ) . '/data/font.ttf',
+ $options->path,
+ 'Wrong default value for property path in class ezcGraphFontOptions'
+ );
+
+ $options->path = $file = dirname( __FILE__ ) . '/data/font2.ttf';
+ $this->assertSame(
+ $file,
+ $options->path,
+ 'Setting property value did not work for property path in class ezcGraphFontOptions'
+ );
+
+ try
+ {
+ $options->path = false;
+ }
+ catch( ezcBaseFileNotFoundException $e )
+ {
+ return true;
+ }
+
+ $this->fail( 'Expected ezcBaseFileNotFoundException.' );
+ }
+
+ public function testFontOptionsPropertyType()
+ {
+ $options = new ezcGraphFontOptions();
+
+ $this->assertSame(
+ ezcGraph::TTF_FONT,
+ $options->type,
+ 'Wrong default value for property type in class ezcGraphFontOptions'
+ );
+
+ $options->type = ezcGraph::PS_FONT;
+ $this->assertSame(
+ ezcGraph::PS_FONT,
+ $options->type,
+ 'Setting property value did not work for property type in class ezcGraphFontOptions'
+ );
+
+ try
+ {
+ $options->type = false;
+ }
+ catch( ezcBaseValueException $e )
+ {
+ return true;
+ }
+
+ $this->fail( 'Expected ezcBaseValueException.' );
+ }
+
+ public function testFontOptionsPropertyMinFontSize()
+ {
+ $options = new ezcGraphFontOptions();
+
+ $this->assertSame(
+ 6,
+ $options->minFontSize,
+ 'Wrong default value for property minFontSize in class ezcGraphFontOptions'
+ );
+
+ $options->minFontSize = 8;
+ $this->assertSame(
+ 8.,
+ $options->minFontSize,
+ 'Setting property value did not work for property minFontSize in class ezcGraphFontOptions'
+ );
+ }
+
+ public function testFontOptionsPropertyMaxFontSize()
+ {
+ $options = new ezcGraphFontOptions();
+
+ $this->assertSame(
+ 96,
+ $options->maxFontSize,
+ 'Wrong default value for property maxFontSize in class ezcGraphFontOptions'
+ );
+
+ $options->maxFontSize = 12;
+ $this->assertSame(
+ 12.,
+ $options->maxFontSize,
+ 'Setting property value did not work for property maxFontSize in class ezcGraphFontOptions'
+ );
+ }
+
+ public function testFontOptionsPropertyMinimalUsedFont()
+ {
+ $options = new ezcGraphFontOptions();
+
+ $this->assertSame(
+ 96,
+ $options->minimalUsedFont,
+ 'Wrong default value for property minimalUsedFont in class ezcGraphFontOptions'
+ );
+
+ $options->minimalUsedFont = 24;
+ $this->assertSame(
+ 24.,
+ $options->minimalUsedFont,
+ 'Setting property value did not work for property minimalUsedFont in class ezcGraphFontOptions'
+ );
+
+ $options->minimalUsedFont = 36.;
+ $this->assertSame(
+ 24.,
+ $options->minimalUsedFont,
+ 'Setting property value did not work for property minimalUsedFont in class ezcGraphFontOptions'
+ );
+ }
+
+ public function testFontOptionsPropertyColor()
+ {
+ $options = new ezcGraphFontOptions();
+
+ $this->assertEquals(
+ ezcGraphColor::fromHex( '#000000' ),
+ $options->color,
+ 'Wrong default value for property color in class ezcGraphFontOptions'
+ );
+
+ $options->color = $color = ezcGraphColor::fromHex( '#FFFFFF' );
+ $this->assertSame(
+ $color,
+ $options->color,
+ 'Setting property value did not work for property color in class ezcGraphFontOptions'
+ );
+
+ try
+ {
+ $options->color = false;
+ }
+ catch( ezcGraphUnknownColorDefinitionException $e )
+ {
+ return true;
+ }
+
+ $this->fail( 'Expected ezcGraphUnknownColorDefinitionException.' );
+ }
+
+ public function testFontOptionsPropertyBackground()
+ {
+ $options = new ezcGraphFontOptions();
+
+ $this->assertSame(
+ false,
+ $options->background,
+ 'Wrong default value for property background in class ezcGraphFontOptions'
+ );
+
+ $options->background = $color = ezcGraphColor::fromHex( '#FFFFFF' );
+ $this->assertSame(
+ $color,
+ $options->background,
+ 'Setting property value did not work for property background in class ezcGraphFontOptions'
+ );
+
+ try
+ {
+ $options->background = false;
+ }
+ catch( ezcGraphUnknownColorDefinitionException $e )
+ {
+ return true;
+ }
+
+ $this->fail( 'Expected ezcGraphUnknownColorDefinitionException.' );
+ }
+
+ public function testFontOptionsPropertyBorder()
+ {
+ $options = new ezcGraphFontOptions();
+
+ $this->assertSame(
+ false,
+ $options->border,
+ 'Wrong default value for property border in class ezcGraphFontOptions'
+ );
+
+ $options->border = $color = ezcGraphColor::fromHex( '#FFFFFF' );
+ $this->assertSame(
+ $color,
+ $options->border,
+ 'Setting property value did not work for property border in class ezcGraphFontOptions'
+ );
+
+ try
+ {
+ $options->border = false;
+ }
+ catch( ezcGraphUnknownColorDefinitionException $e )
+ {
+ return true;
+ }
+
+ $this->fail( 'Expected ezcGraphUnknownColorDefinitionException.' );
+ }
+
+ public function testFontOptionsPropertyBorderWidth()
+ {
+ $options = new ezcGraphFontOptions();
+
+ $this->assertSame(
+ 1,
+ $options->borderWidth,
+ 'Wrong default value for property borderWidth in class ezcGraphFontOptions'
+ );
+
+ $options->borderWidth = 2;
+ $this->assertSame(
+ 2,
+ $options->borderWidth,
+ 'Setting property value did not work for property borderWidth in class ezcGraphFontOptions'
+ );
+ }
+
+ public function testFontOptionsPropertyPadding()
+ {
+ $options = new ezcGraphFontOptions();
+
+ $this->assertSame(
+ 0,
+ $options->padding,
+ 'Wrong default value for property padding in class ezcGraphFontOptions'
+ );
+
+ $options->padding = 1;
+ $this->assertSame(
+ 1,
+ $options->padding,
+ 'Setting property value did not work for property padding in class ezcGraphFontOptions'
+ );
+ }
+
+ public function testFontOptionsPropertyMinimizeBorder()
+ {
+ $options = new ezcGraphFontOptions();
+
+ $this->assertSame(
+ true,
+ $options->minimizeBorder,
+ 'Wrong default value for property minimizeBorder in class ezcGraphFontOptions'
+ );
+
+ $options->minimizeBorder = false;
+ $this->assertSame(
+ false,
+ $options->minimizeBorder,
+ 'Setting property value did not work for property minimizeBorder in class ezcGraphFontOptions'
+ );
+ }
+
+ public function testFontOptionsPropertyTextShadow()
+ {
+ $options = new ezcGraphFontOptions();
+
+ $this->assertSame(
+ false,
+ $options->textShadow,
+ 'Wrong default value for property textShadow in class ezcGraphFontOptions'
+ );
+
+ $options->textShadow = true;
+ $this->assertSame(
+ true,
+ $options->textShadow,
+ 'Setting property value did not work for property textShadow in class ezcGraphFontOptions'
+ );
+ }
+
+ public function testFontOptionsPropertyTextShadowOffset()
+ {
+ $options = new ezcGraphFontOptions();
+
+ $this->assertSame(
+ 1,
+ $options->textShadowOffset,
+ 'Wrong default value for property textShadowOffset in class ezcGraphFontOptions'
+ );
+
+ $options->textShadowOffset = 2;
+ $this->assertSame(
+ 2,
+ $options->textShadowOffset,
+ 'Setting property value did not work for property textShadowOffset in class ezcGraphFontOptions'
+ );
+ }
+
+ public function testFontOptionsPropertyTextShadowColor()
+ {
+ $options = new ezcGraphFontOptions();
+
+ $this->assertEquals(
+ ezcGraphColor::fromHex( '#FFFFFF' ),
+ $options->textShadowColor,
+ 'Wrong default value for property textShadowColor in class ezcGraphFontOptions'
+ );
+
+ $options->textShadowColor = $color = ezcGraphColor::fromHex( '#CCCCCC' );
+ $this->assertSame(
+ $color,
+ $options->textShadowColor,
+ 'Setting property value did not work for property textShadowColor in class ezcGraphFontOptions'
+ );
+
+ try
+ {
+ $options->textShadowColor = false;
+ }
+ catch( ezcGraphUnknownColorDefinitionException $e )
+ {
+ return true;
+ }
+
+ $this->fail( 'Expected ezcGraphUnknownColorDefinitionException.' );
+ }
+}
?>
diff --git a/tests/line_test.php b/tests/line_test.php
index ece6a2b..200eeee 100644
--- a/tests/line_test.php
+++ b/tests/line_test.php
@@ -49,6 +49,128 @@ class ezcGraphLineChartTest extends ezcTestCase
$chart->data['Even more data'] = new ezcGraphArrayDataSet( array( 'sample 1' => 300, 'sample 2' => -30, 'sample 3' => 220, 'sample 4' => 67, 'sample 5' => 450) );
}
+ public function testLineChartOptionsPropertyLineThickness()
+ {
+ $options = new ezcGraphLineChartOptions();
+
+ $this->assertSame(
+ 2,
+ $options->lineThickness,
+ 'Wrong default value for property lineThickness in class ezcGraphLineChartOptions'
+ );
+
+ $options->lineThickness = 4;
+ $this->assertSame(
+ 4,
+ $options->lineThickness,
+ 'Setting property value did not work for property lineThickness in class ezcGraphLineChartOptions'
+ );
+ }
+
+ public function testLineChartOptionsPropertyFillLines()
+ {
+ $options = new ezcGraphLineChartOptions();
+
+ $this->assertSame(
+ false,
+ $options->fillLines,
+ 'Wrong default value for property fillLines in class ezcGraphLineChartOptions'
+ );
+
+ $options->fillLines = 230;
+ $this->assertSame(
+ 230,
+ $options->fillLines,
+ 'Setting property value did not work for property fillLines in class ezcGraphLineChartOptions'
+ );
+ }
+
+ public function testLineChartOptionsPropertySymbolSize()
+ {
+ $options = new ezcGraphLineChartOptions();
+
+ $this->assertSame(
+ 8,
+ $options->symbolSize,
+ 'Wrong default value for property symbolSize in class ezcGraphLineChartOptions'
+ );
+
+ $options->symbolSize = 10;
+ $this->assertSame(
+ 10,
+ $options->symbolSize,
+ 'Setting property value did not work for property symbolSize in class ezcGraphLineChartOptions'
+ );
+ }
+
+ public function testLineChartOptionsPropertyHighlightFont()
+ {
+ $options = new ezcGraphLineChartOptions();
+
+ $this->assertSame(
+ 'ezcGraphFontOptions',
+ get_class( $options->highlightFont ),
+ 'Wrong default value for property highlightFont in class ezcGraphLineChartOptions'
+ );
+
+ $fontOptions = new ezcGraphFontOptions();
+ $fontOptions->path = $this->basePath . 'font2.ttf';
+
+ $options->highlightFont = $fontOptions;
+ $this->assertSame(
+ $fontOptions,
+ $options->highlightFont,
+ 'Setting property value did not work for property highlightFont in class ezcGraphLineChartOptions'
+ );
+
+ try
+ {
+ $options->highlightFont = false;
+ }
+ catch( ezcBaseValueException $e )
+ {
+ return true;
+ }
+
+ $this->fail( 'Expected ezcBaseValueException.' );
+ }
+
+ public function testLineChartOptionsPropertyHighlightSize()
+ {
+ $options = new ezcGraphLineChartOptions();
+
+ $this->assertSame(
+ 14,
+ $options->highlightSize,
+ 'Wrong default value for property highlightSize in class ezcGraphLineChartOptions'
+ );
+
+ $options->highlightSize = 20;
+ $this->assertSame(
+ 20,
+ $options->highlightSize,
+ 'Setting property value did not work for property highlightSize in class ezcGraphLineChartOptions'
+ );
+ }
+
+ public function testLineChartOptionsPropertyHighlightLines()
+ {
+ $options = new ezcGraphLineChartOptions();
+
+ $this->assertSame(
+ false,
+ $options->highlightLines,
+ 'Wrong default value for property highlightLines in class ezcGraphLineChartOptions'
+ );
+
+ $options->highlightLines = true;
+ $this->assertSame(
+ true,
+ $options->highlightLines,
+ 'Setting property value did not work for property highlightLines in class ezcGraphLineChartOptions'
+ );
+ }
+
public function testElementGenerationLegend()
{
$chart = new ezcGraphLineChart();
diff --git a/tests/pie_test.php b/tests/pie_test.php
index 60ea879..1cc5d83 100644
--- a/tests/pie_test.php
+++ b/tests/pie_test.php
@@ -72,6 +72,96 @@ class ezcGraphPieChartTest extends ezcImageTestCase
}
}
+ public function testPieChartOptionsPropertyLabel()
+ {
+ $options = new ezcGraphPieChartOptions();
+
+ $this->assertSame(
+ '%1$s: %2$d (%3$.1f%%)',
+ $options->label,
+ 'Wrong default value for property label in class ezcGraphPieChartOptions'
+ );
+
+ $options->label = '%1$s';
+ $this->assertSame(
+ '%1$s',
+ $options->label,
+ 'Setting property value did not work for property label in class ezcGraphPieChartOptions'
+ );
+ }
+
+ public function testPieChartOptionsPropertySum()
+ {
+ $options = new ezcGraphPieChartOptions();
+
+ $this->assertSame(
+ false,
+ $options->sum,
+ 'Wrong default value for property sum in class ezcGraphPieChartOptions'
+ );
+
+ $options->sum = 100;
+ $this->assertSame(
+ 100.,
+ $options->sum,
+ 'Setting property value did not work for property sum in class ezcGraphPieChartOptions'
+ );
+ }
+
+ public function testPieChartOptionsPropertyPercentTreshHold()
+ {
+ $options = new ezcGraphPieChartOptions();
+
+ $this->assertSame(
+ 0.,
+ $options->percentTreshHold,
+ 'Wrong default value for property percentTreshHold in class ezcGraphPieChartOptions'
+ );
+
+ $options->percentTreshHold = .5;
+ $this->assertSame(
+ .5,
+ $options->percentTreshHold,
+ 'Setting property value did not work for property percentTreshHold in class ezcGraphPieChartOptions'
+ );
+ }
+
+ public function testPieChartOptionsPropertyAbsoluteTreshHold()
+ {
+ $options = new ezcGraphPieChartOptions();
+
+ $this->assertSame(
+ 0.,
+ $options->absoluteTreshHold,
+ 'Wrong default value for property absoluteTreshHold in class ezcGraphPieChartOptions'
+ );
+
+ $options->absoluteTreshHold = 5;
+ $this->assertSame(
+ 5.,
+ $options->absoluteTreshHold,
+ 'Setting property value did not work for property absoluteTreshHold in class ezcGraphPieChartOptions'
+ );
+ }
+
+ public function testPieChartOptionsPropertySummarizeCaption()
+ {
+ $options = new ezcGraphPieChartOptions();
+
+ $this->assertSame(
+ 'Misc',
+ $options->summarizeCaption,
+ 'Wrong default value for property summarizeCaption in class ezcGraphPieChartOptions'
+ );
+
+ $options->summarizeCaption = 'Others';
+ $this->assertSame(
+ 'Others',
+ $options->summarizeCaption,
+ 'Setting property value did not work for property summarizeCaption in class ezcGraphPieChartOptions'
+ );
+ }
+
public function testElementGenerationLegend()
{
$chart = new ezcGraphPieChart();
diff --git a/tests/renderer_2d_test.php b/tests/renderer_2d_test.php
index 8feedeb..dd2e790 100644
--- a/tests/renderer_2d_test.php
+++ b/tests/renderer_2d_test.php
@@ -1943,6 +1943,416 @@ class ezcGraphRenderer2dTest extends ezcTestCase
$this->basePath . 'compare/' . __CLASS__ . '_' . __FUNCTION__ . '.svg'
);
}
-}
+ public function testRendererOptionsPropertyMaxLabelHeight()
+ {
+ $options = new ezcGraphRendererOptions();
+
+ $this->assertSame(
+ .1,
+ $options->maxLabelHeight,
+ 'Wrong default value for property maxLabelHeight in class ezcGraphRendererOptions'
+ );
+
+ $options->maxLabelHeight = .2;
+ $this->assertSame(
+ .2,
+ $options->maxLabelHeight,
+ 'Setting property value did not work for property maxLabelHeight in class ezcGraphRendererOptions'
+ );
+ }
+
+ public function testRendererOptionsPropertyShowSymbol()
+ {
+ $options = new ezcGraphRendererOptions();
+
+ $this->assertSame(
+ true,
+ $options->showSymbol,
+ 'Wrong default value for property showSymbol in class ezcGraphRendererOptions'
+ );
+
+ $options->showSymbol = false;
+ $this->assertSame(
+ false,
+ $options->showSymbol,
+ 'Setting property value did not work for property showSymbol in class ezcGraphRendererOptions'
+ );
+ }
+
+ public function testRendererOptionsPropertySymbolSize()
+ {
+ $options = new ezcGraphRendererOptions();
+
+ $this->assertSame(
+ 6,
+ $options->symbolSize,
+ 'Wrong default value for property symbolSize in class ezcGraphRendererOptions'
+ );
+
+ $options->symbolSize = 8;
+ $this->assertSame(
+ 8,
+ $options->symbolSize,
+ 'Setting property value did not work for property symbolSize in class ezcGraphRendererOptions'
+ );
+ }
+
+ public function testRendererOptionsPropertyMoveOut()
+ {
+ $options = new ezcGraphRendererOptions();
+
+ $this->assertSame(
+ .1,
+ $options->moveOut,
+ 'Wrong default value for property moveOut in class ezcGraphRendererOptions'
+ );
+
+ $options->moveOut = .2;
+ $this->assertSame(
+ .2,
+ $options->moveOut,
+ 'Setting property value did not work for property moveOut in class ezcGraphRendererOptions'
+ );
+ }
+
+ public function testRendererOptionsPropertyTitlePosition()
+ {
+ $options = new ezcGraphRendererOptions();
+
+ $this->assertSame(
+ ezcGraph::TOP,
+ $options->titlePosition,
+ 'Wrong default value for property titlePosition in class ezcGraphRendererOptions'
+ );
+
+ $options->titlePosition = ezcGraph::BOTTOM;
+ $this->assertSame(
+ ezcGraph::BOTTOM,
+ $options->titlePosition,
+ 'Setting property value did not work for property titlePosition in class ezcGraphRendererOptions'
+ );
+ }
+
+ public function testRendererOptionsPropertyTitleAlignement()
+ {
+ $options = new ezcGraphRendererOptions();
+
+ $this->assertSame(
+ ezcGraph::MIDDLE | ezcGraph::CENTER,
+ $options->titleAlignement,
+ 'Wrong default value for property titleAlignement in class ezcGraphRendererOptions'
+ );
+
+ $options->titleAlignement = ezcGraph::BOTTOM;
+ $this->assertSame(
+ ezcGraph::BOTTOM,
+ $options->titleAlignement,
+ 'Setting property value did not work for property titleAlignement in class ezcGraphRendererOptions'
+ );
+ }
+
+ public function testRendererOptionsPropertyDataBorder()
+ {
+ $options = new ezcGraphRendererOptions();
+
+ $this->assertSame(
+ .5,
+ $options->dataBorder,
+ 'Wrong default value for property dataBorder in class ezcGraphRendererOptions'
+ );
+
+ $options->dataBorder = 1.;
+ $this->assertSame(
+ 1.,
+ $options->dataBorder,
+ 'Setting property value did not work for property dataBorder in class ezcGraphRendererOptions'
+ );
+ }
+
+ public function testRendererOptionsPropertyBarMargin()
+ {
+ $options = new ezcGraphRendererOptions();
+
+ $this->assertSame(
+ .1,
+ $options->barMargin,
+ 'Wrong default value for property barMargin in class ezcGraphRendererOptions'
+ );
+
+ $options->barMargin = .2;
+ $this->assertSame(
+ .2,
+ $options->barMargin,
+ 'Setting property value did not work for property barMargin in class ezcGraphRendererOptions'
+ );
+ }
+
+ public function testRendererOptionsPropertyBarPadding()
+ {
+ $options = new ezcGraphRendererOptions();
+
+ $this->assertSame(
+ .05,
+ $options->barPadding,
+ 'Wrong default value for property barPadding in class ezcGraphRendererOptions'
+ );
+
+ $options->barPadding = .1;
+ $this->assertSame(
+ .1,
+ $options->barPadding,
+ 'Setting property value did not work for property barPadding in class ezcGraphRendererOptions'
+ );
+ }
+
+ public function testRendererOptionsPropertyPieChartOffset()
+ {
+ $options = new ezcGraphRendererOptions();
+
+ $this->assertSame(
+ 0,
+ $options->pieChartOffset,
+ 'Wrong default value for property pieChartOffset in class ezcGraphRendererOptions'
+ );
+
+ $options->pieChartOffset = 1;
+ $this->assertSame(
+ 1,
+ $options->pieChartOffset,
+ 'Setting property value did not work for property pieChartOffset in class ezcGraphRendererOptions'
+ );
+ }
+
+ public function testRendererOptionsPropertyLegendSymbolGleam()
+ {
+ $options = new ezcGraphRendererOptions();
+
+ $this->assertSame(
+ false,
+ $options->legendSymbolGleam,
+ 'Wrong default value for property legendSymbolGleam in class ezcGraphRendererOptions'
+ );
+
+ $options->legendSymbolGleam = .1;
+ $this->assertSame(
+ .1,
+ $options->legendSymbolGleam,
+ 'Setting property value did not work for property legendSymbolGleam in class ezcGraphRendererOptions'
+ );
+ }
+
+ public function testRendererOptionsPropertyLegendSymbolGleamSize()
+ {
+ $options = new ezcGraphRendererOptions();
+
+ $this->assertSame(
+ .9,
+ $options->legendSymbolGleamSize,
+ 'Wrong default value for property legendSymbolGleamSize in class ezcGraphRendererOptions'
+ );
+
+ $options->legendSymbolGleamSize = .8;
+ $this->assertSame(
+ .8,
+ $options->legendSymbolGleamSize,
+ 'Setting property value did not work for property legendSymbolGleamSize in class ezcGraphRendererOptions'
+ );
+ }
+
+ public function testRendererOptionsPropertyPieVerticalSize()
+ {
+ $options = new ezcGraphRendererOptions();
+
+ $this->assertSame(
+ .5,
+ $options->pieVerticalSize,
+ 'Wrong default value for property pieVerticalSize in class ezcGraphRendererOptions'
+ );
+
+ $options->pieVerticalSize = .6;
+ $this->assertSame(
+ .6,
+ $options->pieVerticalSize,
+ 'Setting property value did not work for property pieVerticalSize in class ezcGraphRendererOptions'
+ );
+ }
+
+ public function testRendererOptionsPropertyPieHorizontalSize()
+ {
+ $options = new ezcGraphRendererOptions();
+
+ $this->assertSame(
+ .25,
+ $options->pieHorizontalSize,
+ 'Wrong default value for property pieHorizontalSize in class ezcGraphRendererOptions'
+ );
+
+ $options->pieHorizontalSize = .5;
+ $this->assertSame(
+ .5,
+ $options->pieHorizontalSize,
+ 'Setting property value did not work for property pieHorizontalSize in class ezcGraphRendererOptions'
+ );
+ }
+
+ public function testRendererOptionsPropertyPieChartSymbolColor()
+ {
+ $options = new ezcGraphRendererOptions();
+
+ $this->assertEquals(
+ ezcGraphColor::fromHex( '#000000' ),
+ $options->pieChartSymbolColor,
+ 'Wrong default value for property pieChartSymbolColor in class ezcGraphRendererOptions'
+ );
+
+ $options->pieChartSymbolColor = $color = ezcGraphColor::fromHex( '#FFFFFF' );
+ $this->assertSame(
+ $color,
+ $options->pieChartSymbolColor,
+ 'Setting property value did not work for property pieChartSymbolColor in class ezcGraphRendererOptions'
+ );
+
+ try
+ {
+ $options->pieChartSymbolColor = false;
+ }
+ catch( ezcGraphUnknownColorDefinitionException $e )
+ {
+ return true;
+ }
+
+ $this->fail( 'Expected ezcGraphUnknownColorDefinitionException.' );
+ }
+
+ public function testRendererOptionsPropertyPieChartGleam()
+ {
+ $options = new ezcGraphRendererOptions();
+
+ $this->assertSame(
+ false,
+ $options->pieChartGleam,
+ 'Wrong default value for property pieChartGleam in class ezcGraphRendererOptions'
+ );
+
+ $options->pieChartGleam = .2;
+ $this->assertSame(
+ .2,
+ $options->pieChartGleam,
+ 'Setting property value did not work for property pieChartGleam in class ezcGraphRendererOptions'
+ );
+ }
+
+ public function testRendererOptionsPropertyPieChartGleamColor()
+ {
+ $options = new ezcGraphRendererOptions();
+
+ $this->assertEquals(
+ ezcGraphColor::fromHex( '#FFFFFF' ),
+ $options->pieChartGleamColor,
+ 'Wrong default value for property pieChartGleamColor in class ezcGraphRendererOptions'
+ );
+
+ $options->pieChartGleamColor = $color = ezcGraphColor::fromHex( '#000000' );
+ $this->assertSame(
+ $color,
+ $options->pieChartGleamColor,
+ 'Setting property value did not work for property pieChartGleamColor in class ezcGraphRendererOptions'
+ );
+
+ try
+ {
+ $options->pieChartGleamColor = false;
+ }
+ catch( ezcGraphUnknownColorDefinitionException $e )
+ {
+ return true;
+ }
+
+ $this->fail( 'Expected ezcGraphUnknownColorDefinitionException.' );
+ }
+
+ public function testRendererOptionsPropertyPieChartGleamBorder()
+ {
+ $options = new ezcGraphRendererOptions();
+
+ $this->assertSame(
+ 0,
+ $options->pieChartGleamBorder,
+ 'Wrong default value for property pieChartGleamBorder in class ezcGraphRendererOptions'
+ );
+
+ $options->pieChartGleamBorder = 1;
+ $this->assertSame(
+ 1,
+ $options->pieChartGleamBorder,
+ 'Setting property value did not work for property pieChartGleamBorder in class ezcGraphRendererOptions'
+ );
+ }
+
+ public function testRenderer2dOptionsPropertyPieChartShadowSize()
+ {
+ $options = new ezcGraphRenderer2dOptions();
+
+ $this->assertSame(
+ 0,
+ $options->pieChartShadowSize,
+ 'Wrong default value for property pieChartShadowSize in class ezcGraphRenderer2dOptions'
+ );
+
+ $options->pieChartShadowSize = 5;
+ $this->assertSame(
+ 5,
+ $options->pieChartShadowSize,
+ 'Setting property value did not work for property pieChartShadowSize in class ezcGraphRenderer2dOptions'
+ );
+ }
+
+ public function testRenderer2dOptionsPropertyPieChartShadowTransparency()
+ {
+ $options = new ezcGraphRenderer2dOptions();
+
+ $this->assertSame(
+ .3,
+ $options->pieChartShadowTransparency,
+ 'Wrong default value for property pieChartShadowTransparency in class ezcGraphRenderer2dOptions'
+ );
+
+ $options->pieChartShadowTransparency = .5;
+ $this->assertSame(
+ .5,
+ $options->pieChartShadowTransparency,
+ 'Setting property value did not work for property pieChartShadowTransparency in class ezcGraphRenderer2dOptions'
+ );
+ }
+
+ public function testRenderer2dOptionsPropertyPieChartShadowColor()
+ {
+ $options = new ezcGraphRenderer2dOptions();
+
+ $this->assertEquals(
+ ezcGraphColor::fromHex( '#000000' ),
+ $options->pieChartShadowColor,
+ 'Wrong default value for property pieChartShadowColor in class ezcGraphRenderer2dOptions'
+ );
+
+ $options->pieChartShadowColor = $color = ezcGraphColor::fromHex( '#FFFFFF' );
+ $this->assertSame(
+ $color,
+ $options->pieChartShadowColor,
+ 'Setting property value did not work for property pieChartShadowColor in class ezcGraphRenderer2dOptions'
+ );
+
+ try
+ {
+ $options->pieChartShadowColor = false;
+ }
+ catch( ezcGraphUnknownColorDefinitionException $e )
+ {
+ return true;
+ }
+
+ $this->fail( 'Expected ezcGraphUnknownColorDefinitionException.' );
+ }
+}
?>
diff --git a/tests/renderer_3d_test.php b/tests/renderer_3d_test.php
index 7e15fd3..65a5551 100644
--- a/tests/renderer_3d_test.php
+++ b/tests/renderer_3d_test.php
@@ -1239,6 +1239,232 @@ class ezcGraphRenderer3dTest extends ezcImageTestCase
$this->basePath . 'compare/' . __CLASS__ . '_' . __FUNCTION__ . '.svg'
);
}
-}
+ public function testRenderer3dOptionsPropertySeperateLines()
+ {
+ $options = new ezcGraphRenderer3dOptions();
+
+ $this->assertSame(
+ true,
+ $options->seperateLines,
+ 'Wrong default value for property seperateLines in class ezcGraphRenderer3dOptions'
+ );
+
+ $options->seperateLines = false;
+ $this->assertSame(
+ false,
+ $options->seperateLines,
+ 'Setting property value did not work for property seperateLines in class ezcGraphRenderer3dOptions'
+ );
+ }
+
+ public function testRenderer3dOptionsPropertyFillAxis()
+ {
+ $options = new ezcGraphRenderer3dOptions();
+
+ $this->assertSame(
+ .8,
+ $options->fillAxis,
+ 'Wrong default value for property fillAxis in class ezcGraphRenderer3dOptions'
+ );
+
+ $options->fillAxis = .2;
+ $this->assertSame(
+ .2,
+ $options->fillAxis,
+ 'Setting property value did not work for property fillAxis in class ezcGraphRenderer3dOptions'
+ );
+ }
+
+ public function testRenderer3dOptionsPropertyFillGrid()
+ {
+ $options = new ezcGraphRenderer3dOptions();
+
+ $this->assertSame(
+ 0,
+ $options->fillGrid,
+ 'Wrong default value for property fillGrid in class ezcGraphRenderer3dOptions'
+ );
+
+ $options->fillGrid = .5;
+ $this->assertSame(
+ .5,
+ $options->fillGrid,
+ 'Setting property value did not work for property fillGrid in class ezcGraphRenderer3dOptions'
+ );
+ }
+
+ public function testRenderer3dOptionsPropertyDepth()
+ {
+ $options = new ezcGraphRenderer3dOptions();
+
+ $this->assertSame(
+ .1,
+ $options->depth,
+ 'Wrong default value for property depth in class ezcGraphRenderer3dOptions'
+ );
+
+ $options->depth = .05;
+ $this->assertSame(
+ .05,
+ $options->depth,
+ 'Setting property value did not work for property depth in class ezcGraphRenderer3dOptions'
+ );
+ }
+
+ public function testRenderer3dOptionsPropertyPieChartHeight()
+ {
+ $options = new ezcGraphRenderer3dOptions();
+
+ $this->assertSame(
+ 10,
+ $options->pieChartHeight,
+ 'Wrong default value for property pieChartHeight in class ezcGraphRenderer3dOptions'
+ );
+
+ $options->pieChartHeight = 20;
+ $this->assertSame(
+ 20.,
+ $options->pieChartHeight,
+ 'Setting property value did not work for property pieChartHeight in class ezcGraphRenderer3dOptions'
+ );
+ }
+
+ public function testRenderer3dOptionsPropertyPieChartRotation()
+ {
+ $options = new ezcGraphRenderer3dOptions();
+
+ $this->assertSame(
+ 0.6,
+ $options->pieChartRotation,
+ 'Wrong default value for property pieChartRotation in class ezcGraphRenderer3dOptions'
+ );
+
+ $options->pieChartRotation = .4;
+ $this->assertSame(
+ .4,
+ $options->pieChartRotation,
+ 'Setting property value did not work for property pieChartRotation in class ezcGraphRenderer3dOptions'
+ );
+ }
+
+ public function testRenderer3dOptionsPropertyPieChartShadowSize()
+ {
+ $options = new ezcGraphRenderer3dOptions();
+
+ $this->assertSame(
+ 0,
+ $options->pieChartShadowSize,
+ 'Wrong default value for property pieChartShadowSize in class ezcGraphRenderer3dOptions'
+ );
+
+ $options->pieChartShadowSize = 5;
+ $this->assertSame(
+ 5,
+ $options->pieChartShadowSize,
+ 'Setting property value did not work for property pieChartShadowSize in class ezcGraphRenderer3dOptions'
+ );
+ }
+
+ public function testRenderer3dOptionsPropertyPieChartShadowTransparency()
+ {
+ $options = new ezcGraphRenderer3dOptions();
+
+ $this->assertSame(
+ .3,
+ $options->pieChartShadowTransparency,
+ 'Wrong default value for property pieChartShadowTransparency in class ezcGraphRenderer3dOptions'
+ );
+
+ $options->pieChartShadowTransparency = .5;
+ $this->assertSame(
+ .5,
+ $options->pieChartShadowTransparency,
+ 'Setting property value did not work for property pieChartShadowTransparency in class ezcGraphRenderer3dOptions'
+ );
+ }
+
+ public function testRenderer3dOptionsPropertyPieChartShadowColor()
+ {
+ $options = new ezcGraphRenderer3dOptions();
+
+ $this->assertEquals(
+ ezcGraphColor::fromHex( '#000000' ),
+ $options->pieChartShadowColor,
+ 'Wrong default value for property pieChartShadowColor in class ezcGraphRenderer3dOptions'
+ );
+
+ $options->pieChartShadowColor = $color = ezcGraphColor::fromHex( '#FFFFFF' );
+ $this->assertSame(
+ $color,
+ $options->pieChartShadowColor,
+ 'Setting property value did not work for property pieChartShadowColor in class ezcGraphRenderer3dOptions'
+ );
+
+ try
+ {
+ $options->pieChartShadowColor = false;
+ }
+ catch( ezcGraphUnknownColorDefinitionException $e )
+ {
+ return true;
+ }
+
+ $this->fail( 'Expected ezcGraphUnknownColorDefinitionException.' );
+ }
+
+ public function testRenderer3dOptionsPropertyBarDarkenSide()
+ {
+ $options = new ezcGraphRenderer3dOptions();
+
+ $this->assertSame(
+ .2,
+ $options->barDarkenSide,
+ 'Wrong default value for property barDarkenSide in class ezcGraphRenderer3dOptions'
+ );
+
+ $options->barDarkenSide = .4;
+ $this->assertSame(
+ .4,
+ $options->barDarkenSide,
+ 'Setting property value did not work for property barDarkenSide in class ezcGraphRenderer3dOptions'
+ );
+ }
+
+ public function testRenderer3dOptionsPropertyBarDarkenTop()
+ {
+ $options = new ezcGraphRenderer3dOptions();
+
+ $this->assertSame(
+ .4,
+ $options->barDarkenTop,
+ 'Wrong default value for property barDarkenTop in class ezcGraphRenderer3dOptions'
+ );
+
+ $options->barDarkenTop = .8;
+ $this->assertSame(
+ .8,
+ $options->barDarkenTop,
+ 'Setting property value did not work for property barDarkenTop in class ezcGraphRenderer3dOptions'
+ );
+ }
+
+ public function testRenderer3dOptionsPropertyBarChartGleam()
+ {
+ $options = new ezcGraphRenderer3dOptions();
+
+ $this->assertSame(
+ false,
+ $options->barChartGleam,
+ 'Wrong default value for property barChartGleam in class ezcGraphRenderer3dOptions'
+ );
+
+ $options->barChartGleam = .3;
+ $this->assertSame(
+ .3,
+ $options->barChartGleam,
+ 'Setting property value did not work for property barChartGleam in class ezcGraphRenderer3dOptions'
+ );
+ }
+}
?>
diff --git a/tests/suite.php b/tests/suite.php
index 52da6d1..318f433 100644
--- a/tests/suite.php
+++ b/tests/suite.php
@@ -18,6 +18,7 @@ require_once 'pie_test.php';
require_once 'line_test.php';
require_once 'dataset_test.php';
require_once 'dataset_average_test.php';
+require_once 'element_options_test.php';
require_once 'legend_test.php';
require_once 'text_test.php';
require_once 'numeric_axis_test.php';
@@ -27,6 +28,7 @@ require_once 'renderer_2d_test.php';
require_once 'renderer_3d_test.php';
require_once 'axis_exact_renderer_test.php';
require_once 'axis_centered_renderer_test.php';
+require_once 'driver_options_test.php';
require_once 'driver_gd_test.php';
require_once 'driver_svg_test.php';
require_once 'driver_ming_test.php';
@@ -56,6 +58,7 @@ class ezcGraphSuite extends PHPUnit_Framework_TestSuite
$this->addTest( ezcGraphLineChartTest::suite() );
$this->addTest( ezcGraphDataSetTest::suite() );
$this->addTest( ezcGraphDataSetAverageTest::suite() );
+ $this->addTest( ezcGraphElementOptionsTest::suite() );
$this->addTest( ezcGraphLegendTest::suite() );
$this->addTest( ezcGraphNumericAxisTest::suite() );
$this->addTest( ezcGraphLabeledAxisTest::suite() );
@@ -64,6 +67,7 @@ class ezcGraphSuite extends PHPUnit_Framework_TestSuite
$this->addTest( ezcGraphRenderer3dTest::suite() );
$this->addTest( ezcGraphAxisExactRendererTest::suite() );
$this->addTest( ezcGraphAxisCenteredRendererTest::suite() );
+ $this->addTest( ezcGraphDriverOptionsTest::suite() );
$this->addTest( ezcGraphGdDriverTest::suite() );
$this->addTest( ezcGraphSvgDriverTest::suite() );
$this->addTest( ezcGraphMingDriverTest::suite() );
OpenPOWER on IntegriCloud