Update 24-09-2013:
Door redenen heb ik dit "project" redelijk lang laten liggen.. Heb er zelfs nooit meer aan verder gewerkt. Ik heb de class in de spoiler onder deze tekst geplaatst indien er nog iemand geïnteresseerd is om hem verder uit te breiden. De class zelf is goed gevuld met commentaar.. en de uitlijning is zeker niet slecht..
Deze class werkt met child classes en interfaces om charts te doen. Reden? Niet elke grafiek wordt gelijk behandeld. Daarvoor moet er voor iedere grafiek een child-class worden aangemaakt van de Chart-class.
Success ermee
Einde update;[BELANGRIJK]
Dankzij het succes van deze class, heb ik besloten een nieuwe te maken. Een class die nog veel beter is dan deze. Nu kan je wel zeggen waarom ? Wel, deze class is eigenlijk vooral gericht op cirkeldiagrammen, andere diagrammen heb nooit getest of gebruikt.
Er zijn nog zoveel meer mogelijkheden, daarom ga ik een nieuwe class maken, met veel meer mogelijkheden. Maar dit zal wel wat werk kosten, aangezien ik het (met mn huidige kennis) anders ga aanpakken.
Ik zal hierover een nieuw topic maken wanneer ik al wat verder sta.
Aan degene die het tot nu gebruiken, bedankt! En kijk er naar uit
[/BELANGRIJK]
Ik was wat aan het rondkijken en ben een chart class tegengekomen die ik ooit eens had gemaakt voor een of ander project met statistiek.
Dus als je even lui bent zoals ik om de deftige google charts api te bestuderen. Dan kan je deze class gebruiken.
Hij is simpel in omgang, enkel de data en grafiektype doorgeven is al genoeg
Voorbeeld:
Resultaat:
Afbeelding niet beschikbaarDe bron kon niet worden geladen (chart.googleapis.com).Bron openen ↗
Met kleur:
Afbeelding niet beschikbaarDe bron kon niet worden geladen (chart.googleapis.com).Bron openen ↗
De class:
Door redenen heb ik dit "project" redelijk lang laten liggen.. Heb er zelfs nooit meer aan verder gewerkt. Ik heb de class in de spoiler onder deze tekst geplaatst indien er nog iemand geïnteresseerd is om hem verder uit te breiden. De class zelf is goed gevuld met commentaar.. en de uitlijning is zeker niet slecht..
Deze class werkt met child classes en interfaces om charts te doen. Reden? Niet elke grafiek wordt gelijk behandeld. Daarvoor moet er voor iedere grafiek een child-class worden aangemaakt van de Chart-class.
Success ermee

Einde update;
Spoiler tonen
[COLOR= #0000BB]<?php[/COLOR]
interface iChart [COLOR= #007700]{[/COLOR]
[URL="http://www.php.net/public"]public[/URL] [COLOR= #007700]function[/COLOR] setData[COLOR= #007700]([/COLOR][COLOR= #0000BB]$data[/COLOR][COLOR= #007700]);
}[/COLOR]
abstract [URL="http://www.php.net/class"]class[/URL] Chart [COLOR= #007700]{[/COLOR]
[COLOR= #FF8000]/**
* Chart Types
**/[/COLOR]
const LINE_CHART [COLOR= #007700]=[/COLOR] [COLOR= #DD0000]lc[/COLOR][COLOR= #007700];[/COLOR]
const BAR_CHART [COLOR= #007700]=[/COLOR] [COLOR= #DD0000]bhs[/COLOR][COLOR= #007700];[/COLOR]
const PIE_CHART [COLOR= #007700]=[/COLOR] [COLOR= #DD0000]p[/COLOR][COLOR= #007700];[/COLOR]
[COLOR= #FF8000]/**
* Background Types
**/[/COLOR]
const BG_SOLID [COLOR= #007700]=[/COLOR] [COLOR= #DD0000]s[/COLOR][COLOR= #007700];[/COLOR]
const BG_LINEAR_GRADIENT [COLOR= #007700]=[/COLOR] [COLOR= #DD0000]lg[/COLOR][COLOR= #007700];[/COLOR]
const BG_LINEAR_STRIPES [COLOR= #007700]=[/COLOR] [COLOR= #DD0000]ls[/COLOR][COLOR= #007700];[/COLOR]
[COLOR= #FF8000]/**
* Angles
**/[/COLOR]
const COURSE_HORIZONTAL [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]0[/COLOR][COLOR= #007700];[/COLOR]
const COURSE_SKEW_FROMTOP_RIGHTTOLEFT [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]45[/COLOR][COLOR= #007700];[/COLOR]
const COURSE_SKEW_FROMTOP_LEFTTORIGHT [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]225[/COLOR][COLOR= #007700];[/COLOR]
const COURSE_SKEW_FROMBOTTOM_RIGHTTOLEFT [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]315[/COLOR][COLOR= #007700];[/COLOR]
const COURSE_SKEW_FROMBOTTOM_LEFTTORIGHT [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]135[/COLOR][COLOR= #007700];[/COLOR]
[COLOR= #FF8000]// 0, 45, 90, 115
/**
* Colors
*/[/COLOR]
const BLACK [COLOR= #007700]=[/COLOR] [COLOR= #DD0000]000000[/COLOR][COLOR= #007700];[/COLOR]
const SILVER [COLOR= #007700]=[/COLOR] [COLOR= #DD0000]C0C0C0[/COLOR][COLOR= #007700];[/COLOR]
const GRAY [COLOR= #007700]=[/COLOR] [COLOR= #DD0000]808080[/COLOR][COLOR= #007700];[/COLOR]
const WHITE [COLOR= #007700]=[/COLOR] [COLOR= #DD0000]FFFFFF[/COLOR][COLOR= #007700];[/COLOR]
const MAROON [COLOR= #007700]=[/COLOR] [COLOR= #DD0000]800000[/COLOR][COLOR= #007700];[/COLOR]
const RED [COLOR= #007700]=[/COLOR] [COLOR= #DD0000]FF0000[/COLOR][COLOR= #007700];[/COLOR]
const PURPLE [COLOR= #007700]=[/COLOR] [COLOR= #DD0000]800080[/COLOR][COLOR= #007700];[/COLOR]
const GREEN [COLOR= #007700]=[/COLOR] [COLOR= #DD0000]008000[/COLOR][COLOR= #007700];[/COLOR]
const YELLOW [COLOR= #007700]=[/COLOR] [COLOR= #DD0000]FFFF00[/COLOR][COLOR= #007700];[/COLOR]
const BLUE [COLOR= #007700]=[/COLOR] [COLOR= #DD0000]005BB7[/COLOR][COLOR= #007700];[/COLOR]
[URL="http://www.php.net/private"]private[/URL] [COLOR= #0000BB]$data[/COLOR][COLOR= #007700];[/COLOR]
[URL="http://www.php.net/private"]private[/URL] [COLOR= #0000BB]$errors[/COLOR] [COLOR= #007700]=[/COLOR] [URL="http://www.php.net/array"]array[/URL][COLOR= #007700]();[/COLOR]
[URL="http://www.php.net/private"]private[/URL] [COLOR= #0000BB]$chart_type[/COLOR] [COLOR= #007700]=[/COLOR] null[COLOR= #007700];[/COLOR]
[URL="http://www.php.net/public"]public[/URL] [COLOR= #007700]function[/COLOR] __construct[COLOR= #007700]([/COLOR][COLOR= #0000BB]$type[/COLOR][COLOR= #007700]) {[/COLOR]
[COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]chart_type [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]$type[/COLOR][COLOR= #007700];
}[/COLOR]
[URL="http://www.php.net/public"]public[/URL] [COLOR= #007700]function[/COLOR] setData[COLOR= #007700]([/COLOR][COLOR= #0000BB]$data[/COLOR][COLOR= #007700]) {[/COLOR]
[COLOR= #FF8000]// Check if $data is an array[/COLOR]
[URL="http://www.php.net/if"]if[/URL] [COLOR= #007700]([/COLOR][URL="http://www.php.net/is_array"]is_array[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$data[/COLOR][COLOR= #007700])) {[/COLOR]
[COLOR= #FF8000]// If the data index is missing, show an error[/COLOR]
[URL="http://www.php.net/if"]if[/URL] [COLOR= #007700](![/COLOR][URL="http://www.php.net/isset"]isset[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$data[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]data[/COLOR][COLOR= #007700]])) {[/COLOR]
[COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]_addError[COLOR= #007700]([/COLOR][COLOR= #DD0000]Data-array is missing, you need to pass a multi-dimensional associative array with "data" as index.[/COLOR][COLOR= #007700]);[/COLOR]
[COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]stop[COLOR= #007700]();
}[/COLOR]
[COLOR= #FF8000]// If the data index isnt an array, show an error[/COLOR]
[URL="http://www.php.net/else"]else[/URL] [URL="http://www.php.net/if"]if[/URL] [COLOR= #007700](![/COLOR][URL="http://www.php.net/is_array"]is_array[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$data[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]data[/COLOR][COLOR= #007700]])) {[/COLOR]
[COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]_addError[COLOR= #007700]();[/COLOR]
[COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]stop[COLOR= #007700]();
}[/COLOR]
[URL="http://www.php.net/else"]else[/URL] [COLOR= #007700]{[/COLOR]
[COLOR= #FF8000]// Add values and legend[/COLOR]
[COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]_setLegend[COLOR= #007700]([/COLOR][COLOR= #0000BB]$data[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]data[/COLOR][COLOR= #007700]]);[/COLOR]
[COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]_setValues[COLOR= #007700]([/COLOR][COLOR= #0000BB]$data[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]data[/COLOR][COLOR= #007700]]);[/COLOR]
[COLOR= #FF8000]// If colors are given aswell, set them also[/COLOR]
[URL="http://www.php.net/if"]if[/URL] [COLOR= #007700]([/COLOR][URL="http://www.php.net/isset"]isset[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$data[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]colors[/COLOR][COLOR= #007700]]) &&[/COLOR] [URL="http://www.php.net/is_array"]is_array[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$data[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]colors[/COLOR][COLOR= #007700]])) {[/COLOR]
[COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]setColors[COLOR= #007700]([/COLOR][COLOR= #0000BB]$data[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]colors[/COLOR][COLOR= #007700]]);
}[/COLOR]
[COLOR= #FF8000]// If the size is given, also add it[/COLOR]
[URL="http://www.php.net/if"]if[/URL] [COLOR= #007700]([/COLOR][URL="http://www.php.net/isset"]isset[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$data[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]size[/COLOR][COLOR= #007700]])) {[/COLOR]
[COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]setSize[COLOR= #007700]([/COLOR][COLOR= #0000BB]$data[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]size[/COLOR][COLOR= #007700]]);
}[/COLOR]
[COLOR= #FF8000]// If a title is given, also add it[/COLOR]
[URL="http://www.php.net/if"]if[/URL] [COLOR= #007700]([/COLOR][URL="http://www.php.net/isset"]isset[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$data[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]title[/COLOR][COLOR= #007700]])) {[/COLOR]
[COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]setTitle[COLOR= #007700]([/COLOR][COLOR= #0000BB]$data[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]title[/COLOR][COLOR= #007700]]);
}
}
}[/COLOR]
[URL="http://www.php.net/else"]else[/URL] [COLOR= #007700]{[/COLOR]
[COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]_addError[COLOR= #007700]([/COLOR][COLOR= #DD0000]First argument passed to setData should be an array.[/COLOR][COLOR= #007700]);
}
}[/COLOR]
[COLOR= #FF8000]/**
* Sets the legend for the chart.
* If an array with index legend is used to set the legend, it uses that.
* Otherwise just loop trough the array and use its indexes as legends
*
* @param Array $data
* @return void
**/[/COLOR]
[URL="http://www.php.net/private"]private[/URL] [COLOR= #007700]function[/COLOR] _setLegend[COLOR= #007700]([/COLOR][COLOR= #0000BB]$data[/COLOR][COLOR= #007700]) {[/COLOR]
[COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]data[COLOR= #007700][[/COLOR][COLOR= #DD0000]legend[/COLOR][COLOR= #007700]] =[/COLOR] [URL="http://www.php.net/array"]array[/URL][COLOR= #007700]();[/COLOR]
[URL="http://www.php.net/if"]if[/URL] [COLOR= #007700]([/COLOR][URL="http://www.php.net/isset"]isset[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$data[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]legend[/COLOR][COLOR= #007700]])) {[/COLOR]
[URL="http://www.php.net/foreach"]foreach[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$data[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]legend[/COLOR][COLOR= #007700]] as[/COLOR] [COLOR= #0000BB]$legend[/COLOR][COLOR= #007700]) {[/COLOR]
[COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]data[COLOR= #007700][[/COLOR][COLOR= #DD0000]legend[/COLOR][COLOR= #007700]][] =[/COLOR] [COLOR= #0000BB]$legend[/COLOR][COLOR= #007700];
}
}[/COLOR]
[URL="http://www.php.net/else"]else[/URL] [COLOR= #007700]{[/COLOR]
[URL="http://www.php.net/foreach"]foreach[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$data[/COLOR] [COLOR= #007700]as[/COLOR] [COLOR= #0000BB]$legend[/COLOR] [COLOR= #007700]=>[/COLOR] [COLOR= #0000BB]$val[/COLOR][COLOR= #007700]) {[/COLOR]
[COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]data[COLOR= #007700][[/COLOR][COLOR= #DD0000]legend[/COLOR][COLOR= #007700]][] =[/COLOR] [COLOR= #0000BB]$legend[/COLOR][COLOR= #007700];
}
}
}[/COLOR]
[COLOR= #FF8000]/**
* Sets the values for the chart.
* If an array with index values is used to set the values, it uses that.
* Otherwise just loop trough the array and use its indexes as values
*
* @param Array $data
* @return void
**/[/COLOR]
[URL="http://www.php.net/private"]private[/URL] [COLOR= #007700]function[/COLOR] _setValues[COLOR= #007700]([/COLOR][COLOR= #0000BB]$data[/COLOR][COLOR= #007700]) {[/COLOR]
[COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]data[COLOR= #007700][[/COLOR][COLOR= #DD0000]values[/COLOR][COLOR= #007700]] =[/COLOR] [URL="http://www.php.net/array"]array[/URL][COLOR= #007700]();[/COLOR]
[URL="http://www.php.net/if"]if[/URL] [COLOR= #007700]([/COLOR][URL="http://www.php.net/isset"]isset[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$data[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]values[/COLOR][COLOR= #007700]])) {[/COLOR]
[URL="http://www.php.net/foreach"]foreach[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$data[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]values[/COLOR][COLOR= #007700]] as[/COLOR] [COLOR= #0000BB]$val[/COLOR][COLOR= #007700]) {[/COLOR]
[COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]data[COLOR= #007700][[/COLOR][COLOR= #DD0000]values[/COLOR][COLOR= #007700]][] =[/COLOR] [COLOR= #0000BB]$val[/COLOR][COLOR= #007700];
}
}[/COLOR]
[URL="http://www.php.net/else"]else[/URL] [COLOR= #007700]{[/COLOR]
[URL="http://www.php.net/foreach"]foreach[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$data[/COLOR] [COLOR= #007700]as[/COLOR] [COLOR= #0000BB]$legend[/COLOR] [COLOR= #007700]=>[/COLOR] [COLOR= #0000BB]$val[/COLOR][COLOR= #007700]) {[/COLOR]
[COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]data[COLOR= #007700][[/COLOR][COLOR= #DD0000]values[/COLOR][COLOR= #007700]][] =[/COLOR] [COLOR= #0000BB]$val[/COLOR][COLOR= #007700];
}
}
}[/COLOR]
[COLOR= #FF8000]/**
* Sets the colors for the chart
*
* @param Array $colors
* @return void
**/[/COLOR]
[URL="http://www.php.net/public"]public[/URL] [COLOR= #007700]function[/COLOR] setColors[COLOR= #007700]([/COLOR][COLOR= #0000BB]$colors[/COLOR][COLOR= #007700]) {[/COLOR]
[COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]data[COLOR= #007700][[/COLOR][COLOR= #DD0000]colors[/COLOR][COLOR= #007700]] =[/COLOR] [URL="http://www.php.net/array"]array[/URL][COLOR= #007700]();[/COLOR]
[URL="http://www.php.net/foreach"]foreach[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$colors[/COLOR] [COLOR= #007700]as[/COLOR] [COLOR= #0000BB]$color[/COLOR][COLOR= #007700]) {[/COLOR]
[COLOR= #FF8000]// Remove hashtags for google API to recognize the colors[/COLOR]
[COLOR= #0000BB]$color[/COLOR] [COLOR= #007700]=[/COLOR] [URL="http://www.php.net/str_replace"]str_replace[/URL][COLOR= #007700]([/COLOR][COLOR= #DD0000]#[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #DD0000][/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$color[/COLOR][COLOR= #007700]);[/COLOR]
[COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]data[COLOR= #007700][[/COLOR][COLOR= #DD0000]colors[/COLOR][COLOR= #007700]][] =[/COLOR] [COLOR= #0000BB]$color[/COLOR][COLOR= #007700];
}
}[/COLOR]
[COLOR= #FF8000]/**
* Sets the size of the chart
*
* @param String $size
* @return void
**/[/COLOR]
[URL="http://www.php.net/public"]public[/URL] [COLOR= #007700]function[/COLOR] setSize[COLOR= #007700]([/COLOR][COLOR= #0000BB]$size[/COLOR][COLOR= #007700]) {[/COLOR]
[URL="http://www.php.net/if"]if[/URL] [COLOR= #007700]([/COLOR][URL="http://www.php.net/strpos"]strpos[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$size[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #DD0000]x[/COLOR][COLOR= #007700]) ==[/COLOR] false[COLOR= #007700]) {[/COLOR]
[COLOR= #0000BB]$size[/COLOR] [COLOR= #007700]=[/COLOR] [URL="http://www.php.net/strtolower"]strtolower[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$size[/COLOR][COLOR= #007700]);[/COLOR]
[COLOR= #0000BB]$size[/COLOR] [COLOR= #007700]=[/COLOR] [URL="http://www.php.net/str_replace"]str_replace[/URL][COLOR= #007700]([/COLOR][COLOR= #DD0000],[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #DD0000]x[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$size[/COLOR][COLOR= #007700]);[/COLOR]
[COLOR= #0000BB]$size[/COLOR] [COLOR= #007700]=[/COLOR] [URL="http://www.php.net/str_replace"]str_replace[/URL][COLOR= #007700]([/COLOR][COLOR= #DD0000]*[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #DD0000]x[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$size[/COLOR][COLOR= #007700]);[/COLOR]
[COLOR= #FF8000]// If the size still doesnt contain an x char, use the standard size[/COLOR]
[URL="http://www.php.net/if"]if[/URL] [COLOR= #007700]([/COLOR][URL="http://www.php.net/strpos"]strpos[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$size[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #DD0000]x[/COLOR][COLOR= #007700]) ==[/COLOR] false[COLOR= #007700]) {[/COLOR]
[COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]data[COLOR= #007700][[/COLOR][COLOR= #DD0000]size[/COLOR][COLOR= #007700]] =[/COLOR] [COLOR= #DD0000]300x225[/COLOR][COLOR= #007700];
}[/COLOR]
[URL="http://www.php.net/else"]else[/URL] [COLOR= #007700]{[/COLOR]
[COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]data[COLOR= #007700][[/COLOR][COLOR= #DD0000]size[/COLOR][COLOR= #007700]] =[/COLOR] [COLOR= #0000BB]$size[/COLOR][COLOR= #007700];
}
}[/COLOR]
[URL="http://www.php.net/else"]else[/URL] [COLOR= #007700]{[/COLOR]
[COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]data[COLOR= #007700][[/COLOR][COLOR= #DD0000]size[/COLOR][COLOR= #007700]] =[/COLOR] [COLOR= #0000BB]$size[/COLOR][COLOR= #007700];
}
}[/COLOR]
[COLOR= #FF8000]/**
* Sets the title of the chart
*
* @param String $title
* @return void
**/[/COLOR]
[URL="http://www.php.net/public"]public[/URL] [COLOR= #007700]function[/COLOR] setTitle[COLOR= #007700]([/COLOR][COLOR= #0000BB]$title[/COLOR][COLOR= #007700]) {[/COLOR]
[URL="http://www.php.net/if"]if[/URL] [COLOR= #007700]([/COLOR][COLOR= #0000BB]$title[/COLOR] [COLOR= #007700]!=[/COLOR] [COLOR= #DD0000][/COLOR][COLOR= #007700]) {[/COLOR]
[COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]data[COLOR= #007700][[/COLOR][COLOR= #DD0000]title[/COLOR][COLOR= #007700]] =[/COLOR] [COLOR= #0000BB]$title[/COLOR][COLOR= #007700];
}
}[/COLOR]
[COLOR= #FF8000]/**
* Sets the margin for the chart
* If no params are given, then all margins are set to zero.
*
* @param int $left [optiona]
* @param int $right [optional]
* @param int $top [optional]
* @param int $bottom [optional]
* @return void
**/[/COLOR]
[URL="http://www.php.net/public"]public[/URL] [COLOR= #007700]function[/COLOR] setMargins[COLOR= #007700]([/COLOR][COLOR= #0000BB]$left[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]0[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$right[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]0[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$top[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]0[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$bottom[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]0[/COLOR][COLOR= #007700]) {[/COLOR]
[COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]data[COLOR= #007700][[/COLOR][COLOR= #DD0000]margins[/COLOR][COLOR= #007700]] =[/COLOR] [URL="http://www.php.net/array"]array[/URL][COLOR= #007700]([/COLOR]
[COLOR= #DD0000]left[/COLOR] [COLOR= #007700]=>[/COLOR] [COLOR= #0000BB]$left[/COLOR][COLOR= #007700],[/COLOR]
[COLOR= #DD0000]right[/COLOR] [COLOR= #007700]=>[/COLOR] [COLOR= #0000BB]$right[/COLOR][COLOR= #007700],[/COLOR]
[COLOR= #DD0000]top[/COLOR] [COLOR= #007700]=>[/COLOR] [COLOR= #0000BB]$top[/COLOR][COLOR= #007700],[/COLOR]
[COLOR= #DD0000]bottom[/COLOR] [COLOR= #007700]=>[/COLOR] [COLOR= #0000BB]$bottom[/COLOR]
[COLOR= #007700]);
}[/COLOR]
[COLOR= #FF8000]/**
* Sets the background for the whole image, or the chart area
*
* @param Array $data
* BG_SOLID: just give an array with the color as first index ex. array(#000000)
* BG_LINEAR_GRADIENT: give an array with the colors as index and their offset as value.
* Ex. array(000000 => 0, ffffff => 1)
* BG_LINEAR_STRIPES: give an array with the colors as index and their width as value.
* Ex. array(000000 => 0.25, ffffff => 0.25)
* @param [optional] String $type
* @param [optional] int $angle
* @param [optional] String $type | Dont give this as this is only used to determine wether the chart or whole image used to be filled
* @return void
**/[/COLOR]
[URL="http://www.php.net/public"]public[/URL] [COLOR= #007700]function[/COLOR] setBackground[COLOR= #007700]([/COLOR][COLOR= #0000BB]$data[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$type[/COLOR] [COLOR= #007700]=[/COLOR] Chart[COLOR= #007700]::[/COLOR]BG_SOLID[COLOR= #007700],[/COLOR] [COLOR= #0000BB]$angle[/COLOR] [COLOR= #007700]=[/COLOR] Chart[COLOR= #007700]::[/COLOR]COURSE_HORIZONTAL[COLOR= #007700],[/COLOR] [COLOR= #0000BB]$fill[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #DD0000]img[/COLOR][COLOR= #007700]) {[/COLOR]
[COLOR= #FF8000]// Solid fill[/COLOR]
[URL="http://www.php.net/if"]if[/URL] [COLOR= #007700]([/COLOR][COLOR= #0000BB]$type[/COLOR] [COLOR= #007700]==[/COLOR] Chart[COLOR= #007700]::[/COLOR]BG_SOLID[COLOR= #007700]) {[/COLOR]
[COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]data[COLOR= #007700][[/COLOR][COLOR= #DD0000]background[/COLOR][COLOR= #007700]][[/COLOR][COLOR= #0000BB]$fill[/COLOR][COLOR= #007700]] =[/COLOR] [URL="http://www.php.net/array"]array[/URL][COLOR= #007700]([/COLOR]
[COLOR= #DD0000]color[/COLOR] [COLOR= #007700]=>[/COLOR] [COLOR= #0000BB]$data[/COLOR][COLOR= #007700][[/COLOR][COLOR= #0000BB]0[/COLOR][COLOR= #007700]],[/COLOR]
[COLOR= #DD0000]type[/COLOR] [COLOR= #007700]=>[/COLOR] [COLOR= #0000BB]$type[/COLOR]
[COLOR= #007700]);
}[/COLOR]
[COLOR= #FF8000]// Linear Gradient fill[/COLOR]
[URL="http://www.php.net/if"]if[/URL] [COLOR= #007700]([/COLOR][COLOR= #0000BB]$type[/COLOR] [COLOR= #007700]==[/COLOR] Chart[COLOR= #007700]::[/COLOR]BG_LINEAR_GRADIENT[COLOR= #007700]) {[/COLOR]
[COLOR= #0000BB]$colors[/COLOR] [COLOR= #007700]=[/COLOR] [URL="http://www.php.net/array"]array[/URL][COLOR= #007700]();[/COLOR]
[URL="http://www.php.net/foreach"]foreach[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$data[/COLOR] [COLOR= #007700]as[/COLOR] [COLOR= #0000BB]$color[/COLOR] [COLOR= #007700]=>[/COLOR] [COLOR= #0000BB]$offset[/COLOR][COLOR= #007700]) {[/COLOR]
[COLOR= #0000BB]$colors[/COLOR][COLOR= #007700][[/COLOR][URL="http://www.php.net/str_replace"]str_replace[/URL][COLOR= #007700]([/COLOR][COLOR= #DD0000]#[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #DD0000][/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$color[/COLOR][COLOR= #007700])] =[/COLOR] [COLOR= #0000BB]$offset[/COLOR][COLOR= #007700];
}[/COLOR]
[COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]data[COLOR= #007700][[/COLOR][COLOR= #DD0000]background[/COLOR][COLOR= #007700]][[/COLOR][COLOR= #0000BB]$fill[/COLOR][COLOR= #007700]] =[/COLOR] [URL="http://www.php.net/array"]array[/URL][COLOR= #007700]([/COLOR]
[COLOR= #DD0000]colors[/COLOR] [COLOR= #007700]=>[/COLOR] [COLOR= #0000BB]$colors[/COLOR][COLOR= #007700],[/COLOR]
[COLOR= #DD0000]angle[/COLOR] [COLOR= #007700]=>[/COLOR] [COLOR= #0000BB]$angle[/COLOR][COLOR= #007700],[/COLOR]
[COLOR= #DD0000]type[/COLOR] [COLOR= #007700]=>[/COLOR] [COLOR= #0000BB]$type[/COLOR]
[COLOR= #007700]);
}[/COLOR]
[COLOR= #FF8000]// Linear stripes fill[/COLOR]
[URL="http://www.php.net/if"]if[/URL] [COLOR= #007700]([/COLOR][COLOR= #0000BB]$type[/COLOR] [COLOR= #007700]==[/COLOR] CHART[COLOR= #007700]::[/COLOR]BG_LINEAR_STRIPES[COLOR= #007700]) {[/COLOR]
[COLOR= #0000BB]$colors[/COLOR] [COLOR= #007700]=[/COLOR] [URL="http://www.php.net/array"]array[/URL][COLOR= #007700]();[/COLOR]
[URL="http://www.php.net/foreach"]foreach[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$data[/COLOR] [COLOR= #007700]as[/COLOR] [COLOR= #0000BB]$color[/COLOR] [COLOR= #007700]=>[/COLOR] [COLOR= #0000BB]$width[/COLOR][COLOR= #007700]) {[/COLOR]
[COLOR= #0000BB]$colors[/COLOR][COLOR= #007700][[/COLOR][URL="http://www.php.net/str_replace"]str_replace[/URL][COLOR= #007700]([/COLOR][COLOR= #DD0000]#[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #DD0000][/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$color[/COLOR][COLOR= #007700])] =[/COLOR] [COLOR= #0000BB]$width[/COLOR][COLOR= #007700];
}[/COLOR]
[COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]data[COLOR= #007700][[/COLOR][COLOR= #DD0000]background[/COLOR][COLOR= #007700]][[/COLOR][COLOR= #0000BB]$fill[/COLOR][COLOR= #007700]] =[/COLOR] [URL="http://www.php.net/array"]array[/URL][COLOR= #007700]([/COLOR]
[COLOR= #DD0000]colors[/COLOR] [COLOR= #007700]=>[/COLOR] [COLOR= #0000BB]$colors[/COLOR][COLOR= #007700],[/COLOR]
[COLOR= #DD0000]angle[/COLOR] [COLOR= #007700]=>[/COLOR] [COLOR= #0000BB]$angle[/COLOR][COLOR= #007700],[/COLOR]
[COLOR= #DD0000]type[/COLOR] [COLOR= #007700]=>[/COLOR] [COLOR= #0000BB]$type[/COLOR]
[COLOR= #007700]);
}
}[/COLOR]
[COLOR= #FF8000]/**
* Sets the chart-area background.
* This is NOT the whole image
*
* See method setBackground() for param information
*
* @return void
**/[/COLOR]
[URL="http://www.php.net/public"]public[/URL] [COLOR= #007700]function[/COLOR] setChartBackground[COLOR= #007700]([/COLOR][COLOR= #0000BB]$data[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$type[/COLOR] [COLOR= #007700]=[/COLOR] Chart[COLOR= #007700]::[/COLOR]BG_SOLID[COLOR= #007700],[/COLOR] [COLOR= #0000BB]$angle[/COLOR] [COLOR= #007700]=[/COLOR] Chart[COLOR= #007700]::[/COLOR]COURSE_HORIZONTAL[COLOR= #007700]) {[/COLOR]
[COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]setBackground[COLOR= #007700]([/COLOR][COLOR= #0000BB]$data[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$type[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$angle[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #DD0000]chart[/COLOR][COLOR= #007700]);
}[/COLOR]
[URL="http://www.php.net/public"]public[/URL] [COLOR= #007700]function[/COLOR] setTransparency[COLOR= #007700]([/COLOR][COLOR= #0000BB]$lvl[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]0[/COLOR][COLOR= #007700]) {
}[/COLOR]
[URL="http://www.php.net/public"]public[/URL] [COLOR= #007700]function[/COLOR] _numberToHex[COLOR= #007700]([/COLOR][COLOR= #0000BB]$number[/COLOR][COLOR= #007700]) {[/COLOR]
[COLOR= #0000BB]$quotients[/COLOR] [COLOR= #007700]=[/COLOR] [URL="http://www.php.net/array"]array[/URL][COLOR= #007700]();[/COLOR] [COLOR= #FF8000]// Quotienten voor de hex[/COLOR]
[COLOR= #0000BB]$hex[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #DD0000]"0123456789ABCDEF"[/COLOR][COLOR= #007700];[/COLOR]
[COLOR= #0000BB]$pow[/COLOR] [COLOR= #007700]= -[/COLOR][COLOR= #0000BB]1[/COLOR][COLOR= #007700];[/COLOR]
[COLOR= #0000BB]$mpow[/COLOR] [COLOR= #007700]=[/COLOR] null[COLOR= #007700];[/COLOR]
[COLOR= #FF8000]// Eerste de maximum macht te bepalen[/COLOR]
[URL="http://www.php.net/for"]for[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$i[/COLOR][COLOR= #007700]=[/COLOR][COLOR= #0000BB]0[/COLOR][COLOR= #007700]; ([/COLOR][COLOR= #0000BB]$number[/COLOR]/[URL="http://www.php.net/pow"]pow[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]16[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$i[/COLOR][COLOR= #007700]) >[/COLOR] [COLOR= #0000BB]1[/COLOR][COLOR= #007700]);[/COLOR] [COLOR= #0000BB]$i[/COLOR][COLOR= #007700]++) {[/COLOR]
[COLOR= #0000BB]$mpow[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]$i[/COLOR][COLOR= #007700];[/COLOR]
[COLOR= #0000BB]$pow[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]$i[/COLOR][COLOR= #007700];
}[/COLOR]
[COLOR= #FF8000]// Voor iedere macht[/COLOR]
[URL="http://www.php.net/for"]for[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$i[/COLOR][COLOR= #007700]=[/COLOR][COLOR= #0000BB]0[/COLOR][COLOR= #007700];[/COLOR] [COLOR= #0000BB]$i[/COLOR] [COLOR= #007700]<[/COLOR] [COLOR= #0000BB]$mpow[/COLOR][COLOR= #007700];[/COLOR] [COLOR= #0000BB]$i[/COLOR][COLOR= #007700]++) {[/COLOR]
[COLOR= #FF8000]// Getal v/d macht verkrijgen[/COLOR]
[COLOR= #0000BB]$pown[/COLOR] [COLOR= #007700]=[/COLOR] [URL="http://www.php.net/pow"]pow[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]16[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$pow[/COLOR][COLOR= #007700]--);[/COLOR]
[COLOR= #FF8000]// Checken hoeveel keer deze macht in ons getal kan[/COLOR]
[COLOR= #0000BB]$quotient[/COLOR] [COLOR= #007700]=[/COLOR] [URL="http://www.php.net/floor"]floor[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$number[/COLOR] / [COLOR= #0000BB]$pown[/COLOR][COLOR= #007700]);[/COLOR]
[COLOR= #FF8000]// Ons getal verminderen met het product van ons quotient met de macht[/COLOR]
[COLOR= #0000BB]$number[/COLOR] [COLOR= #007700]-=[/COLOR] [COLOR= #0000BB]$pown[/COLOR][COLOR= #007700]*[/COLOR][COLOR= #0000BB]$quotient[/COLOR][COLOR= #007700];[/COLOR]
[COLOR= #FF8000]// Ons quotient nog vervangen door heximale tekens[/COLOR]
[COLOR= #0000BB]$quotient[/COLOR] [COLOR= #007700]=[/COLOR] [URL="http://www.php.net/substr"]substr[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$hex[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$quotient[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]1[/COLOR][COLOR= #007700]);[/COLOR]
[COLOR= #FF8000]// Toevoegen aan onze array[/COLOR]
[COLOR= #0000BB]$quotients[/COLOR][COLOR= #007700][] =[/COLOR] [COLOR= #0000BB]$quotient[/COLOR][COLOR= #007700];
}[/COLOR]
[COLOR= #FF8000]// Onze hex retourneren[/COLOR]
[URL="http://www.php.net/return"]return[/URL] [URL="http://www.php.net/implode"]implode[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$quotients[/COLOR][COLOR= #007700]).[/COLOR][URL="http://www.php.net/substr"]substr[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$hex[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$number[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]1[/COLOR][COLOR= #007700]);
}[/COLOR]
[URL="http://www.php.net/private"]private[/URL] [COLOR= #007700]function[/COLOR] _hexToNumber[COLOR= #007700]([/COLOR][COLOR= #0000BB]$hex[/COLOR][COLOR= #007700]) {[/COLOR]
[URL="http://www.php.net/return"]return[/URL] hexdec[COLOR= #007700]([/COLOR][COLOR= #0000BB]$hex[/COLOR][COLOR= #007700]);
}[/COLOR]
[COLOR= #FF8000]/**
* Adds an error to the total error list
* Errors are outputed when stop() method is called.
*
* @param String $error
* @return void
**/[/COLOR]
[URL="http://www.php.net/protected"]protected[/URL] final [COLOR= #007700]function[/COLOR] _addError[COLOR= #007700]([/COLOR][COLOR= #0000BB]$error[/COLOR][COLOR= #007700]) {[/COLOR]
[URL="http://www.php.net/if"]if[/URL] [COLOR= #007700]([/COLOR][COLOR= #0000BB]$error[/COLOR] [COLOR= #007700]!=[/COLOR] [COLOR= #DD0000][/COLOR][COLOR= #007700]) {[/COLOR]
[URL="http://www.php.net/if"]if[/URL] [COLOR= #007700](![/COLOR][URL="http://www.php.net/in_array"]in_array[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$error[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]errors[COLOR= #007700])) {[/COLOR]
[COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]errors[COLOR= #007700][] =[/COLOR] [COLOR= #0000BB]$error[/COLOR][COLOR= #007700];
}
}
}[/COLOR]
[COLOR= #FF8000]/**
* Outputs the error log and stops further execution of the class
*
* @return bool [false]
**/[/COLOR]
[URL="http://www.php.net/protected"]protected[/URL] final [COLOR= #007700]function[/COLOR] stop[COLOR= #007700]() {[/COLOR]
[URL="http://www.php.net/foreach"]foreach[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]errors [COLOR= #007700]as[/COLOR] [COLOR= #0000BB]$error[/COLOR][COLOR= #007700]) {[/COLOR]
[URL="http://www.php.net/echo"]echo[/URL] [COLOR= #0000BB]$error[/COLOR][COLOR= #007700].[/COLOR][COLOR= #DD0000]<br />[/COLOR][COLOR= #007700];
}[/COLOR]
[URL="http://www.php.net/return"]return[/URL] false[COLOR= #007700];
}[/COLOR]
[COLOR= #FF8000]/**
* Returns the legend string to use in the url for the chart.
*
* @return String
**/[/COLOR]
[URL="http://www.php.net/protected"]protected[/URL] final [COLOR= #007700]function[/COLOR] _getLegendAsString[COLOR= #007700]() {[/COLOR]
[COLOR= #0000BB]$i[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]0[/COLOR][COLOR= #007700];[/COLOR]
[COLOR= #0000BB]$total[/COLOR] [COLOR= #007700]=[/COLOR] [URL="http://www.php.net/count"]count[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]data[COLOR= #007700][[/COLOR][COLOR= #DD0000]legend[/COLOR][COLOR= #007700]]);[/COLOR]
[COLOR= #0000BB]$ret[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #DD0000]&chdl=[/COLOR][COLOR= #007700];[/COLOR]
[URL="http://www.php.net/if"]if[/URL] [COLOR= #007700]([/COLOR][COLOR= #0000BB]$total[/COLOR] [COLOR= #007700]==[/COLOR] [COLOR= #0000BB]0[/COLOR][COLOR= #007700]) {[/COLOR]
[COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]_addError[COLOR= #007700]([/COLOR][COLOR= #DD0000]You have forgotten to set the data[/COLOR][COLOR= #007700]);[/COLOR]
[COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]stop[COLOR= #007700]();
}[/COLOR]
[URL="http://www.php.net/foreach"]foreach[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]data[COLOR= #007700][[/COLOR][COLOR= #DD0000]legend[/COLOR][COLOR= #007700]] as[/COLOR] [COLOR= #0000BB]$legend[/COLOR][COLOR= #007700]) {[/COLOR]
[COLOR= #0000BB]$ret[/COLOR] [COLOR= #007700].= ([/COLOR][COLOR= #0000BB]$i[/COLOR][COLOR= #007700]++ ==[/COLOR] [COLOR= #0000BB]0[/COLOR][COLOR= #007700]) ?[/COLOR] [COLOR= #0000BB]$legend[/COLOR] [COLOR= #007700]:[/COLOR] [COLOR= #DD0000]|[/COLOR][COLOR= #007700].[/COLOR][COLOR= #0000BB]$legend[/COLOR][COLOR= #007700];
}[/COLOR]
[URL="http://www.php.net/return"]return[/URL] [COLOR= #0000BB]$ret[/COLOR][COLOR= #007700];
}[/COLOR]
[COLOR= #FF8000]/**
* Returns the values string to use in the url for the chart.
*
* @return String
**/[/COLOR]
[URL="http://www.php.net/protected"]protected[/URL] final [COLOR= #007700]function[/COLOR] _getValuesAsString[COLOR= #007700]() {[/COLOR]
[COLOR= #0000BB]$i[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]0[/COLOR][COLOR= #007700];[/COLOR]
[COLOR= #0000BB]$total[/COLOR] [COLOR= #007700]=[/COLOR] [URL="http://www.php.net/count"]count[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]data[COLOR= #007700][[/COLOR][COLOR= #DD0000]values[/COLOR][COLOR= #007700]]);[/COLOR]
[COLOR= #0000BB]$ret[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #DD0000]&chd=t:[/COLOR][COLOR= #007700];[/COLOR]
[URL="http://www.php.net/if"]if[/URL] [COLOR= #007700]([/COLOR][COLOR= #0000BB]$total[/COLOR] [COLOR= #007700]==[/COLOR] [COLOR= #0000BB]0[/COLOR][COLOR= #007700]) {[/COLOR]
[COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]_addError[COLOR= #007700]([/COLOR][COLOR= #DD0000]You have forgotten to set the data[/COLOR][COLOR= #007700]);[/COLOR]
[COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]stop[COLOR= #007700]();
}[/COLOR]
[URL="http://www.php.net/foreach"]foreach[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]data[COLOR= #007700][[/COLOR][COLOR= #DD0000]values[/COLOR][COLOR= #007700]] as[/COLOR] [COLOR= #0000BB]$val[/COLOR][COLOR= #007700]) {[/COLOR]
[COLOR= #0000BB]$ret[/COLOR] [COLOR= #007700].= ([/COLOR][COLOR= #0000BB]$i[/COLOR][COLOR= #007700]++ ==[/COLOR] [COLOR= #0000BB]0[/COLOR][COLOR= #007700]) ?[/COLOR] [COLOR= #0000BB]$val[/COLOR] [COLOR= #007700]:[/COLOR] [COLOR= #DD0000],[/COLOR][COLOR= #007700].[/COLOR][COLOR= #0000BB]$val[/COLOR][COLOR= #007700];
}[/COLOR]
[URL="http://www.php.net/return"]return[/URL] [COLOR= #0000BB]$ret[/COLOR][COLOR= #007700];
}[/COLOR]
[COLOR= #FF8000]/**
* Returns the colors string to use in the url for the chart.
* Returns an empty string if no colors are set.
*
* @return String
**/[/COLOR]
[URL="http://www.php.net/protected"]protected[/URL] final [COLOR= #007700]function[/COLOR] _getColorsAsString[COLOR= #007700]() {[/COLOR]
[COLOR= #0000BB]$i[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]0[/COLOR][COLOR= #007700];[/COLOR]
[COLOR= #0000BB]$ret[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #DD0000]&chco=[/COLOR][COLOR= #007700];[/COLOR]
[COLOR= #FF8000]// If no colors are set, then return an empty string.[/COLOR]
[URL="http://www.php.net/if"]if[/URL] [COLOR= #007700](![/COLOR][URL="http://www.php.net/isset"]isset[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$data[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]colors[/COLOR][COLOR= #007700]])) {[/COLOR]
[COLOR= #0000BB]$ret[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #DD0000][/COLOR][COLOR= #007700];
}[/COLOR]
[URL="http://www.php.net/else"]else[/URL] [COLOR= #007700]{[/COLOR]
[URL="http://www.php.net/foreach"]foreach[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]data[COLOR= #007700][[/COLOR][COLOR= #DD0000]colors[/COLOR][COLOR= #007700]] as[/COLOR] [COLOR= #0000BB]$color[/COLOR][COLOR= #007700]) {[/COLOR]
[COLOR= #0000BB]$ret[/COLOR] [COLOR= #007700].= ([/COLOR][COLOR= #0000BB]$i[/COLOR][COLOR= #007700]++ ==[/COLOR] [COLOR= #0000BB]0[/COLOR][COLOR= #007700]) ?[/COLOR] [COLOR= #0000BB]$color[/COLOR] [COLOR= #007700]:[/COLOR] [COLOR= #DD0000],[/COLOR][COLOR= #007700].[/COLOR][COLOR= #0000BB]$color[/COLOR][COLOR= #007700];
}
}[/COLOR]
[URL="http://www.php.net/return"]return[/URL] [COLOR= #0000BB]$ret[/COLOR][COLOR= #007700];
}[/COLOR]
[COLOR= #FF8000]/**
* Returns the title string to use in the url for the chart.
* Returns an empty string if no title is set.
*
* @return String
**/[/COLOR]
[URL="http://www.php.net/protected"]protected[/URL] final [COLOR= #007700]function[/COLOR] _getTitleAsString[COLOR= #007700]() {[/COLOR]
[URL="http://www.php.net/if"]if[/URL] [COLOR= #007700]([/COLOR][URL="http://www.php.net/isset"]isset[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]data[COLOR= #007700][[/COLOR][COLOR= #DD0000]title[/COLOR][COLOR= #007700]])) {[/COLOR]
[URL="http://www.php.net/return"]return[/URL] [COLOR= #DD0000]&chtt=[/COLOR][COLOR= #007700].[/COLOR][COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]data[COLOR= #007700][[/COLOR][COLOR= #DD0000]title[/COLOR][COLOR= #007700]];
}[/COLOR]
[URL="http://www.php.net/else"]else[/URL] [COLOR= #007700]{[/COLOR]
[URL="http://www.php.net/return"]return[/URL] [COLOR= #DD0000][/COLOR][COLOR= #007700];
}
}[/COLOR]
[COLOR= #FF8000]/**
* Returns the margin string to use in the url for the chart.
* Returns an empty string if no margins are set.
*
* @return String
**/[/COLOR]
[URL="http://www.php.net/protected"]protected[/URL] final [COLOR= #007700]function[/COLOR] _getMarginsAsString[COLOR= #007700]() {[/COLOR]
[URL="http://www.php.net/if"]if[/URL] [COLOR= #007700]([/COLOR][URL="http://www.php.net/isset"]isset[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]data[COLOR= #007700][[/COLOR][COLOR= #DD0000]margins[/COLOR][COLOR= #007700]])) {[/COLOR]
[COLOR= #0000BB]$ret[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #DD0000]&chma=[/COLOR][COLOR= #007700];[/COLOR]
[COLOR= #0000BB]$i[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]0[/COLOR][COLOR= #007700];[/COLOR]
[URL="http://www.php.net/foreach"]foreach[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]data[COLOR= #007700][[/COLOR][COLOR= #DD0000]margins[/COLOR][COLOR= #007700]] as[/COLOR] [COLOR= #0000BB]$margin[/COLOR][COLOR= #007700]) {[/COLOR]
[COLOR= #0000BB]$ret[/COLOR] [COLOR= #007700]= ([/COLOR][COLOR= #0000BB]$i[/COLOR][COLOR= #007700]++ ==[/COLOR] [COLOR= #0000BB]0[/COLOR][COLOR= #007700]) ?[/COLOR] [COLOR= #0000BB]$margin[/COLOR] [COLOR= #007700]:[/COLOR] [COLOR= #DD0000],[/COLOR][COLOR= #007700].[/COLOR][COLOR= #0000BB]$margin[/COLOR][COLOR= #007700];
}[/COLOR]
[URL="http://www.php.net/return"]return[/URL] [COLOR= #0000BB]$ret[/COLOR][COLOR= #007700];
}[/COLOR]
[URL="http://www.php.net/else"]else[/URL] [COLOR= #007700]{[/COLOR]
[URL="http://www.php.net/return"]return[/URL] [COLOR= #DD0000][/COLOR][COLOR= #007700];
}
}[/COLOR]
[COLOR= #FF8000]/**
* Returns the size string to use in the url for the chart.
* Returns an empty string if no size is set.
*
* @return String
**/[/COLOR]
[URL="http://www.php.net/protected"]protected[/URL] final [COLOR= #007700]function[/COLOR] _getSizeAsString[COLOR= #007700]() {[/COLOR]
[URL="http://www.php.net/if"]if[/URL] [COLOR= #007700]([/COLOR][URL="http://www.php.net/isset"]isset[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]data[COLOR= #007700][[/COLOR][COLOR= #DD0000]size[/COLOR][COLOR= #007700]])) {[/COLOR]
[URL="http://www.php.net/return"]return[/URL] [COLOR= #DD0000]&chs=[/COLOR][COLOR= #007700].[/COLOR][COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]data[COLOR= #007700][[/COLOR][COLOR= #DD0000]size[/COLOR][COLOR= #007700]];
}[/COLOR]
[URL="http://www.php.net/else"]else[/URL] [COLOR= #007700]{[/COLOR]
[URL="http://www.php.net/return"]return[/URL] [COLOR= #DD0000]&chs=300x225[/COLOR][COLOR= #007700];
}
}[/COLOR]
[COLOR= #FF8000]/**
* Returns the background string to use in the url for the chart-background or image-background.
* Returns an empty string if no background is set.
*
* @return String
**/[/COLOR]
[URL="http://www.php.net/protected"]protected[/URL] final [COLOR= #007700]function[/COLOR] _getBackgroundAsString[COLOR= #007700]() {[/COLOR]
[COLOR= #0000BB]$ret[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #DD0000][/COLOR][COLOR= #007700];[/COLOR]
[COLOR= #FF8000]/**
* Background Fill
**/[/COLOR]
[URL="http://www.php.net/if"]if[/URL] [COLOR= #007700]([/COLOR][URL="http://www.php.net/isset"]isset[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]data[COLOR= #007700][[/COLOR][COLOR= #DD0000]background[/COLOR][COLOR= #007700]][[/COLOR][COLOR= #DD0000]img[/COLOR][COLOR= #007700]])) {[/COLOR]
[COLOR= #0000BB]$background[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]data[COLOR= #007700][[/COLOR][COLOR= #DD0000]background[/COLOR][COLOR= #007700]][[/COLOR][COLOR= #DD0000]img[/COLOR][COLOR= #007700]];[/COLOR]
[URL="http://www.php.net/if"]if[/URL] [COLOR= #007700]([/COLOR][COLOR= #0000BB]$background[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]type[/COLOR][COLOR= #007700]] ==[/COLOR] Chart[COLOR= #007700]::[/COLOR]BG_SOLID[COLOR= #007700]) {[/COLOR]
[COLOR= #0000BB]$ret[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #DD0000]&chf=bg,s,[/COLOR][COLOR= #007700].[/COLOR][COLOR= #0000BB]$background[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]color[/COLOR][COLOR= #007700]];
}[/COLOR]
[URL="http://www.php.net/if"]if[/URL] [COLOR= #007700]([/COLOR][COLOR= #0000BB]$background[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]type[/COLOR][COLOR= #007700]] ==[/COLOR] Chart[COLOR= #007700]::[/COLOR]BG_LINEAR_GRADIENT[COLOR= #007700]) {[/COLOR]
[COLOR= #0000BB]$ret[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #DD0000]&chf=bg,lg,[/COLOR][COLOR= #007700].[/COLOR][COLOR= #0000BB]$background[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]angle[/COLOR][COLOR= #007700]];[/COLOR]
[URL="http://www.php.net/foreach"]foreach[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$background[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]colors[/COLOR][COLOR= #007700]] as[/COLOR] [COLOR= #0000BB]$color[/COLOR] [COLOR= #007700]=>[/COLOR] [COLOR= #0000BB]$offset[/COLOR][COLOR= #007700]) {[/COLOR]
[COLOR= #0000BB]$ret[/COLOR] [COLOR= #007700].=[/COLOR] [COLOR= #DD0000],[/COLOR][COLOR= #007700].[/COLOR][COLOR= #0000BB]$color[/COLOR][COLOR= #007700].[/COLOR][COLOR= #DD0000],[/COLOR][COLOR= #007700].[/COLOR][COLOR= #0000BB]$offset[/COLOR][COLOR= #007700];
}
}[/COLOR]
[URL="http://www.php.net/if"]if[/URL] [COLOR= #007700]([/COLOR][COLOR= #0000BB]$background[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]type[/COLOR][COLOR= #007700]] ==[/COLOR] Chart[COLOR= #007700]::[/COLOR]BG_LINEAR_STRIPES[COLOR= #007700]) {[/COLOR]
[COLOR= #0000BB]$ret[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #DD0000]&chf=bg,ls,[/COLOR][COLOR= #007700].[/COLOR][COLOR= #0000BB]$background[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]angle[/COLOR][COLOR= #007700]];[/COLOR]
[URL="http://www.php.net/foreach"]foreach[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$background[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]colors[/COLOR][COLOR= #007700]] as[/COLOR] [COLOR= #0000BB]$color[/COLOR] [COLOR= #007700]=>[/COLOR] [COLOR= #0000BB]$width[/COLOR][COLOR= #007700]) {[/COLOR]
[COLOR= #FF8000]// Replace commas by dots as google uses dots for decimal numbers[/COLOR]
[COLOR= #0000BB]$width[/COLOR] [COLOR= #007700]=[/COLOR] [URL="http://www.php.net/number_format"]number_format[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$width[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]2[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #DD0000].[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #DD0000] [/COLOR][COLOR= #007700]);[/COLOR]
[COLOR= #0000BB]$ret[/COLOR] [COLOR= #007700].=[/COLOR] [COLOR= #DD0000],[/COLOR][COLOR= #007700].[/COLOR][COLOR= #0000BB]$color[/COLOR][COLOR= #007700].[/COLOR][COLOR= #DD0000],[/COLOR][COLOR= #007700].[/COLOR][COLOR= #0000BB]$width[/COLOR][COLOR= #007700];
}
}
}[/COLOR]
[COLOR= #FF8000]/**
* Chart-area Fill
**/[/COLOR]
[URL="http://www.php.net/if"]if[/URL] [COLOR= #007700]([/COLOR][URL="http://www.php.net/isset"]isset[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]data[COLOR= #007700][[/COLOR][COLOR= #DD0000]background[/COLOR][COLOR= #007700]][[/COLOR][COLOR= #DD0000]chart[/COLOR][COLOR= #007700]])) {[/COLOR]
[COLOR= #0000BB]$background[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]data[COLOR= #007700][[/COLOR][COLOR= #DD0000]background[/COLOR][COLOR= #007700]][[/COLOR][COLOR= #DD0000]chart[/COLOR][COLOR= #007700]];[/COLOR]
[URL="http://www.php.net/if"]if[/URL] [COLOR= #007700]([/COLOR][COLOR= #0000BB]$background[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]type[/COLOR][COLOR= #007700]] ==[/COLOR] Chart[COLOR= #007700]::[/COLOR]BG_SOLID[COLOR= #007700]) {[/COLOR]
[COLOR= #0000BB]$ret[/COLOR] [COLOR= #007700]= ([/COLOR][URL="http://www.php.net/empty"]empty[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$ret[/COLOR][COLOR= #007700]) ?[/COLOR] [COLOR= #DD0000]&chf=c,s,[/COLOR] [COLOR= #007700]:[/COLOR] [COLOR= #0000BB]$ret[/COLOR][COLOR= #007700].[/COLOR][COLOR= #DD0000]|c,s,[/COLOR][COLOR= #007700]).[/COLOR][COLOR= #0000BB]$background[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]color[/COLOR][COLOR= #007700]];
}[/COLOR]
[URL="http://www.php.net/if"]if[/URL] [COLOR= #007700]([/COLOR][COLOR= #0000BB]$background[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]type[/COLOR][COLOR= #007700]] ==[/COLOR] Chart[COLOR= #007700]::[/COLOR]BG_LINEAR_GRADIENT[COLOR= #007700]) {[/COLOR]
[COLOR= #0000BB]$ret[/COLOR] [COLOR= #007700]= ([/COLOR][URL="http://www.php.net/empty"]empty[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$ret[/COLOR][COLOR= #007700]) ?[/COLOR] [COLOR= #DD0000]&chf=c,lg,[/COLOR] [COLOR= #007700]:[/COLOR] [COLOR= #0000BB]$ret[/COLOR][COLOR= #007700].[/COLOR][COLOR= #DD0000]|c,lg,[/COLOR][COLOR= #007700]).[/COLOR][COLOR= #0000BB]$background[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]angle[/COLOR][COLOR= #007700]];[/COLOR]
[URL="http://www.php.net/foreach"]foreach[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$background[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]colors[/COLOR][COLOR= #007700]] as[/COLOR] [COLOR= #0000BB]$color[/COLOR] [COLOR= #007700]=>[/COLOR] [COLOR= #0000BB]$offset[/COLOR][COLOR= #007700]) {[/COLOR]
[COLOR= #0000BB]$ret[/COLOR] [COLOR= #007700].=[/COLOR] [COLOR= #DD0000],[/COLOR][COLOR= #007700].[/COLOR][COLOR= #0000BB]$color[/COLOR][COLOR= #007700].[/COLOR][COLOR= #DD0000],[/COLOR][COLOR= #007700].[/COLOR][COLOR= #0000BB]$offset[/COLOR][COLOR= #007700];
}
}[/COLOR]
[URL="http://www.php.net/if"]if[/URL] [COLOR= #007700]([/COLOR][COLOR= #0000BB]$background[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]type[/COLOR][COLOR= #007700]] ==[/COLOR] Chart[COLOR= #007700]::[/COLOR]BG_LINEAR_STRIPES[COLOR= #007700]) {[/COLOR]
[COLOR= #0000BB]$ret[/COLOR] [COLOR= #007700]= ([/COLOR][URL="http://www.php.net/empty"]empty[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$ret[/COLOR][COLOR= #007700]) ?[/COLOR] [COLOR= #DD0000]&chf=c,ls,[/COLOR] [COLOR= #007700]:[/COLOR] [COLOR= #0000BB]$ret[/COLOR][COLOR= #007700].[/COLOR][COLOR= #DD0000]|c,ls,[/COLOR][COLOR= #007700]).[/COLOR][COLOR= #0000BB]$background[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]angle[/COLOR][COLOR= #007700]];[/COLOR]
[URL="http://www.php.net/foreach"]foreach[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$background[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]colors[/COLOR][COLOR= #007700]] as[/COLOR] [COLOR= #0000BB]$color[/COLOR] [COLOR= #007700]=>[/COLOR] [COLOR= #0000BB]$width[/COLOR][COLOR= #007700]) {[/COLOR]
[COLOR= #FF8000]// Replace commas by dots as google uses dots for decimal numbers[/COLOR]
[COLOR= #0000BB]$width[/COLOR] [COLOR= #007700]=[/COLOR] [URL="http://www.php.net/number_format"]number_format[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$width[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]2[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #DD0000].[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #DD0000] [/COLOR][COLOR= #007700]);[/COLOR]
[COLOR= #0000BB]$ret[/COLOR] [COLOR= #007700].=[/COLOR] [COLOR= #DD0000],[/COLOR][COLOR= #007700].[/COLOR][COLOR= #0000BB]$color[/COLOR][COLOR= #007700].[/COLOR][COLOR= #DD0000],[/COLOR][COLOR= #007700].[/COLOR][COLOR= #0000BB]$width[/COLOR][COLOR= #007700];
}
}
}[/COLOR]
[URL="http://www.php.net/return"]return[/URL] [COLOR= #0000BB]$ret[/COLOR][COLOR= #007700];
}[/COLOR]
[URL="http://www.php.net/protected"]protected[/URL] final [COLOR= #007700]function[/COLOR] _getBaseUrl[COLOR= #007700]() {[/COLOR]
[COLOR= #0000BB]$url[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #DD0000]//chart.googleapis.com/chart[/COLOR][COLOR= #007700];[/COLOR]
[COLOR= #0000BB]$url[/COLOR] [COLOR= #007700].=[/COLOR] [COLOR= #DD0000]?cht=[/COLOR][COLOR= #007700].[/COLOR][COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]chart_type[COLOR= #007700];[/COLOR]
[COLOR= #0000BB]$url[/COLOR] [COLOR= #007700].=[/COLOR] [COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]_getLegendAsString[COLOR= #007700]();[/COLOR]
[COLOR= #0000BB]$url[/COLOR] [COLOR= #007700].=[/COLOR] [COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]_getValuesAsString[COLOR= #007700]();[/COLOR]
[COLOR= #0000BB]$url[/COLOR] [COLOR= #007700].=[/COLOR] [COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]_getColorsAsString[COLOR= #007700]();[/COLOR]
[COLOR= #0000BB]$url[/COLOR] [COLOR= #007700].=[/COLOR] [COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]_getTitleAsString[COLOR= #007700]();[/COLOR]
[COLOR= #0000BB]$url[/COLOR] [COLOR= #007700].=[/COLOR] [COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]_getSizeAsString[COLOR= #007700]();[/COLOR]
[COLOR= #0000BB]$url[/COLOR] [COLOR= #007700].=[/COLOR] [COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]_getMarginsAsString[COLOR= #007700]();[/COLOR]
[COLOR= #0000BB]$url[/COLOR] [COLOR= #007700].=[/COLOR] [COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]_getBackgroundAsString[COLOR= #007700]();[/COLOR]
[URL="http://www.php.net/return"]return[/URL] [COLOR= #0000BB]$url[/COLOR][COLOR= #007700];
}
}[/COLOR]
[URL="http://www.php.net/class"]class[/URL] LineChart extends Chart implements iChart [COLOR= #007700]{[/COLOR]
[URL="http://www.php.net/public"]public[/URL] [COLOR= #007700]function[/COLOR] __construct[COLOR= #007700]([/COLOR][COLOR= #0000BB]$data[/COLOR] [COLOR= #007700]=[/COLOR] null[COLOR= #007700]) {[/COLOR]
parent[COLOR= #007700]::[/COLOR]__construct[COLOR= #007700]([/COLOR]Chart[COLOR= #007700]::[/COLOR]LINE_CHART[COLOR= #007700]);[/COLOR]
[URL="http://www.php.net/if"]if[/URL] [COLOR= #007700]([/COLOR][COLOR= #0000BB]$data[/COLOR] [COLOR= #007700]!==[/COLOR] null [COLOR= #007700]&&[/COLOR] [URL="http://www.php.net/is_array"]is_array[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$data[/COLOR][COLOR= #007700])) {[/COLOR]
parent[COLOR= #007700]:[/COLOR]SMILEYYYYYYYYYYYBEGIN[COLOR= #007700]:[/COLOR]setData[COLOR= #007700]([/COLOR][COLOR= #0000BB]$data[/COLOR][COLOR= #007700]);
}
}[/COLOR]
[URL="http://www.php.net/public"]public[/URL] [COLOR= #007700]function[/COLOR] test[COLOR= #007700]() {[/COLOR][URL="http://www.php.net/echo"]echo[/URL] [COLOR= #DD0000]TESTING[/COLOR][COLOR= #007700];}[/COLOR]
[URL="http://www.php.net/public"]public[/URL] [COLOR= #007700]function[/COLOR] getChart[COLOR= #007700]() {[/COLOR]
[URL="http://www.php.net/echo"]echo[/URL] [COLOR= #DD0000]<img src="[/COLOR][COLOR= #007700].[/COLOR][COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]_getBaseUrl[COLOR= #007700]().[/COLOR][COLOR= #DD0000]" />[/COLOR][COLOR= #007700];
}
}[/COLOR]Dankzij het succes van deze class, heb ik besloten een nieuwe te maken. Een class die nog veel beter is dan deze. Nu kan je wel zeggen waarom ? Wel, deze class is eigenlijk vooral gericht op cirkeldiagrammen, andere diagrammen heb nooit getest of gebruikt.
Er zijn nog zoveel meer mogelijkheden, daarom ga ik een nieuwe class maken, met veel meer mogelijkheden. Maar dit zal wel wat werk kosten, aangezien ik het (met mn huidige kennis) anders ga aanpakken.
Ik zal hierover een nieuw topic maken wanneer ik al wat verder sta.
Aan degene die het tot nu gebruiken, bedankt! En kijk er naar uit

[/BELANGRIJK]
Ik was wat aan het rondkijken en ben een chart class tegengekomen die ik ooit eens had gemaakt voor een of ander project met statistiek.
Dus als je even lui bent zoals ik om de deftige google charts api te bestuderen. Dan kan je deze class gebruiken.
Hij is simpel in omgang, enkel de data en grafiektype doorgeven is al genoeg

Voorbeeld:
[COLOR= #0000BB]<?php
$data[/COLOR] [COLOR= #007700]=[/COLOR] [URL="http://www.php.net/array"]array[/URL][COLOR= #007700]([/COLOR]
[COLOR= #DD0000]legende1[/COLOR] [COLOR= #007700]=>[/COLOR] [COLOR= #0000BB]5[/COLOR][COLOR= #007700],[/COLOR]
[COLOR= #DD0000]legende2[/COLOR] [COLOR= #007700]=>[/COLOR] [COLOR= #0000BB]3[/COLOR][COLOR= #007700],[/COLOR]
[COLOR= #DD0000]leegend3[/COLOR] [COLOR= #007700]=>[/COLOR] [COLOR= #0000BB]8[/COLOR]
[COLOR= #007700]);[/COLOR]
[COLOR= #0000BB]$chart[/COLOR] [COLOR= #007700]= new[/COLOR] Chart[COLOR= #007700]([/COLOR]Chart[COLOR= #007700]:[/COLOR][COLOR= #007700]:[/COLOR]PIE_CHART[COLOR= #007700],[/COLOR] [COLOR= #0000BB]$data[/COLOR][COLOR= #007700],[/COLOR] null[COLOR= #007700],[/COLOR] [COLOR= #DD0000]Mijn test grafiek[/COLOR][COLOR= #007700]);[/COLOR]
[URL="http://www.php.net/echo"]echo[/URL] [COLOR= #0000BB]$chart[/COLOR][COLOR= #007700]->[/COLOR]getChart[COLOR= #007700]();[/COLOR]
?> Resultaat:
Met kleur:
[COLOR= #0000BB]<?php
$chart[/COLOR] [COLOR= #007700]= new[/COLOR] Chart[COLOR= #007700]([/COLOR]Chart[COLOR= #007700]:[/COLOR][COLOR= #007700]:[/COLOR]PIE_CHART[COLOR= #007700],[/COLOR] [COLOR= #0000BB]$data[/COLOR][COLOR= #007700],[/COLOR] [URL="http://www.php.net/array"]array[/URL][COLOR= #007700]([/COLOR]Chart[COLOR= #007700]::[/COLOR]BLUE[COLOR= #007700],[/COLOR] Chart[COLOR= #007700]::[/COLOR]GREEN[COLOR= #007700],[/COLOR] Chart[COLOR= #007700]::[/COLOR]RED[COLOR= #007700]),[/COLOR] [COLOR= #DD0000]Mijn test grafiek[/COLOR][COLOR= #007700]);[/COLOR] De class:
Spoiler tonen
[COLOR= #0000BB]<?php[/COLOR]
[URL="http://www.php.net/class"]class[/URL] Chart [COLOR= #007700]{[/COLOR]
[COLOR= #FF8000]/**
* Chart Types
**/[/COLOR]
const LINE_CHART [COLOR= #007700]=[/COLOR] [COLOR= #DD0000]lc[/COLOR][COLOR= #007700];[/COLOR]
const LINE_CHART_SPARKLINE [COLOR= #007700]=[/COLOR] [COLOR= #DD0000]ls[/COLOR][COLOR= #007700];[/COLOR]
const LINE_CHART_XY [COLOR= #007700]=[/COLOR] [COLOR= #DD0000]lxy[/COLOR][COLOR= #007700];[/COLOR]
const BAR_CHART [COLOR= #007700]=[/COLOR] [COLOR= #DD0000]bhs[/COLOR][COLOR= #007700];[/COLOR]
const BAR_CHART_VERTICAL [COLOR= #007700]=[/COLOR] [COLOR= #DD0000]bvs[/COLOR][COLOR= #007700];[/COLOR]
const BAR_CHART_HORIZONTAL_GROUPED [COLOR= #007700]=[/COLOR] [COLOR= #DD0000]bhg[/COLOR][COLOR= #007700];[/COLOR]
const BAR_CHART_VERTICAL_GROUPED [COLOR= #007700]=[/COLOR] [COLOR= #DD0000]bvg[/COLOR][COLOR= #007700];[/COLOR]
const PIE_CHART [COLOR= #007700]=[/COLOR] [COLOR= #DD0000]p[/COLOR][COLOR= #007700];[/COLOR]
const PIE_CHART_THREED [COLOR= #007700]=[/COLOR] [COLOR= #DD0000]p3[/COLOR][COLOR= #007700];[/COLOR]
const PIE_CHART_CONCENTRIC [COLOR= #007700]=[/COLOR] [COLOR= #DD0000]c[/COLOR][COLOR= #007700];[/COLOR]
const RADAR_CHART [COLOR= #007700]=[/COLOR] [COLOR= #DD0000]r[/COLOR][COLOR= #007700];[/COLOR]
const RADER_CHART_SPLINES [COLOR= #007700]=[/COLOR] [COLOR= #DD0000]rs[/COLOR][COLOR= #007700];[/COLOR]
const SCATTER_PLOT [COLOR= #007700]=[/COLOR] [COLOR= #DD0000]s[/COLOR][COLOR= #007700];[/COLOR]
const QR_CODE [COLOR= #007700]=[/COLOR] [COLOR= #DD0000]qr[/COLOR][COLOR= #007700];[/COLOR]
const O_METER [COLOR= #007700]=[/COLOR] [COLOR= #DD0000]gm[/COLOR][COLOR= #007700];[/COLOR]
[COLOR= #FF8000]/**
* Colors
*/[/COLOR]
const BLACK [COLOR= #007700]=[/COLOR] [COLOR= #DD0000]000000[/COLOR][COLOR= #007700];[/COLOR]
const SILVER [COLOR= #007700]=[/COLOR] [COLOR= #DD0000]C0C0C0[/COLOR][COLOR= #007700];[/COLOR]
const GRAY [COLOR= #007700]=[/COLOR] [COLOR= #DD0000]808080[/COLOR][COLOR= #007700];[/COLOR]
const WHITE [COLOR= #007700]=[/COLOR] [COLOR= #DD0000]FFFFFF[/COLOR][COLOR= #007700];[/COLOR]
const MAROON [COLOR= #007700]=[/COLOR] [COLOR= #DD0000]800000[/COLOR][COLOR= #007700];[/COLOR]
const RED [COLOR= #007700]=[/COLOR] [COLOR= #DD0000]FF0000[/COLOR][COLOR= #007700];[/COLOR]
const PURPLE [COLOR= #007700]=[/COLOR] [COLOR= #DD0000]800080[/COLOR][COLOR= #007700];[/COLOR]
const GREEN [COLOR= #007700]=[/COLOR] [COLOR= #DD0000]008000[/COLOR][COLOR= #007700];[/COLOR]
const YELLOW [COLOR= #007700]=[/COLOR] [COLOR= #DD0000]FFFF00[/COLOR][COLOR= #007700];[/COLOR]
const BLUE [COLOR= #007700]=[/COLOR] [COLOR= #DD0000]005BB7[/COLOR][COLOR= #007700];[/COLOR]
[URL="http://www.php.net/private"]private[/URL] [COLOR= #0000BB]$charType[/COLOR][COLOR= #007700];[/COLOR]
[URL="http://www.php.net/private"]private[/URL] [COLOR= #0000BB]$legend[/COLOR][COLOR= #007700];[/COLOR]
[URL="http://www.php.net/private"]private[/URL] [COLOR= #0000BB]$values[/COLOR][COLOR= #007700];[/COLOR]
[URL="http://www.php.net/private"]private[/URL] [COLOR= #0000BB]$colors[/COLOR][COLOR= #007700];[/COLOR]
[URL="http://www.php.net/private"]private[/URL] [COLOR= #0000BB]$size[/COLOR][COLOR= #007700];[/COLOR]
[URL="http://www.php.net/private"]private[/URL] [COLOR= #0000BB]$title[/COLOR][COLOR= #007700];[/COLOR]
[URL="http://www.php.net/public"]public[/URL] [COLOR= #007700]function[/COLOR] __construct[COLOR= #007700]([/COLOR][COLOR= #0000BB]$type[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$data[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$colors[/COLOR] [COLOR= #007700]=[/COLOR] null[COLOR= #007700],[/COLOR] [COLOR= #0000BB]$title[/COLOR] [COLOR= #007700]=[/COLOR] null[COLOR= #007700],[/COLOR] [COLOR= #0000BB]$size[/COLOR][COLOR= #007700]=[/COLOR][COLOR= #DD0000]300x225[/COLOR][COLOR= #007700]) {[/COLOR]
[COLOR= #0000BB]$this[/COLOR][COLOR= #007700]->[/COLOR]setCharType[COLO
