tooltipbar-chartopen-flash-chartopenflashchart2ofc

Open Flash Chart - tooltip #x_label# not showing


I'm currently playing with a bar chart implemented through Open Flash Charts (I believe version 1, might be version 2...) with PHP. Unfortunately, we're having real trouble with the tooltip not showing the correct thing. I am trying to get it to show the x-axis label for the hovered-over column, then a ":", then the value of the bar. The code is as follows:

$Colour = '#3465A4';

$BarChart= new bar();
$BarChart->set_values($Bar);
$BarChart->set_colour($Colour);
$BarChart->set_tooltip('#x_label#:#val#');

$x_labels = new x_axis_labels();
$x_labels->set_labels($Roles);
$x_labels->rotate(-60);

$x = new x_axis();
$x->set_labels($x_labels);

$chart = new open_flash_chart();
$chart->add_element($BarChart);
$chart->set_bg_colour( '#FFFFFF' ); 
$chart->set_x_axis($x); 

$tooltip = new tooltip();
$tooltip->set_hover();

$chart->set_tooltip($tooltip);

$JSONArray['my_chart_1'] = $chart->toPrettyString();

As far as I can tell, this should be correct - the bar chart appears, with the correct values (populated from $bar, whose generation is not shown above). However, the hover-over tool-tip for a column only shows ":value" - the label name is missing!

Does anyone know where we might have gone wrong, and how I can fix it?

EDIT:

An update for any Bounty Hunters coming in to try and answer this question. The reason I have not accepted the below answer is that it only provides a work-around, and does not explain why the work-around is necessary. I am looking either for an answer to my original question (how to make the labels show in a normal bar-chart), or a reasonable explanation regarding why one must use a stacked bar chart (including sources makes your answer so much better!). If the latter, example code or an explanation of how stacked charts are created would be much appreciated as well!


Solution

  • If you are happy with the simple bar visuals then use stacked bar (using it with an array of one element will draw it just like the simple bar). That one will replace #x_label# correctly.
    Alternatively you can copy the missing code from Bars/Stack.as to other bar types and recompile the code.