Open Flash Chart 2 - Stack Bar chart

Some example code on Open Flash Chart 2 stack bar chart

Example of stack bar chart

<?php

....
$data['clients'] = array('Aaaa', 'Bbbb', 'Cccc');
$data['resources'] = array('Kalle', 'Pelle', 'Nisse');
$data['data'][] = array(14,5,42);
$data['data'][] = array(15,32,42);
$data['data'][] = array(8,18,100);

$out = cc2_content_stack_chart("Resource allocation", $data);

return
ofc_api_render($out);
....

/**
 * Open Flash Chart Stack bar Chart
 *
 * @param unknown_type $title
 * @param unknown_type $data
 * @param unknown_type $y_range
 * @return unknown
 */
function cc2_content_stack_chart($title, $data, $y_range=180) {
   
   
$font_size = 13;

   
$title = new title($title);
   
$title->set_style( "{font-size: 18px; text-align: left;}" );

   
$bar_stack = new open_flash_chart();
   
$bar_stack->set_title( new title('Stacked') );

   
$bar_stack = new bar_stack();

   
$cc = _get_color();
   
$c = count($cc);
   
$i=0;
    foreach (
$data['clients'] as $key => $client) {
        if (
$key > $c) {
           
$i= 0;
        }
       
$color = _get_color($i);
       
$colors[] = $color;
       
$clients[] = new bar_stack_key( $color, $client, $font_size);
       
$i++;
    }
   
   
   
$bar_stack->set_colours( $colors );
   
   
   
    foreach (
$data['data'] as $key => $value) {
       
$bar_stack->append_stack( $value ); //array( 2.5, 5, 2.5 )
   
}
   
   
   
$bar_stack->set_keys($clients);

   
//$bar_stack->set_tooltip( 'X label [#x_label#], Value [#val#]<br>Total [#total#]' );
   
   
foreach ($data['resources'] as $key => $resource) {
        
$resources[] = $resource;
    }
   
   
   
$y = new y_axis();
   
$y->set_range( 0, $y_range, 20 );
   
   
$x = new x_axis();
   
$x->set_labels_from_array( $resources );
   
   
$tooltip = new tooltip();
   
$tooltip->set_hover();
   
   
$chart = new open_flash_chart();
   
$chart->set_title( $title );
   
$chart->add_element( $bar_stack );
   
$chart->set_x_axis( $x );
   
$chart->add_y_axis( $y );
   
$chart->set_tooltip( $tooltip );

   
$chart->bg_colour = '#FFFFFF';

       
   return
$chart;
}


?>

Download library at: http://teethgrinder.co.uk/open-flash-chart-2/

Knowledge keywords: