1

我目前正在使用 PHP 使用通过 Open Flash Charts(我相信版本 1,可能是版本 2...)实现的条形图。不幸的是,我们遇到了工具提示没有显示正确内容的问题。我试图让它显示悬停列的 x 轴标签,然后是“:”,然后是条形的值。代码如下:

$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();

据我所知,这应该是正确的 - 条形图出现,具有正确的值(从 $bar 填充,上面未显示其生成)。但是,一列的悬停工具提示仅显示“:值” - 标签名称丢失!

有谁知道我们可能哪里出错了,我该如何解决?

编辑:

任何前来尝试回答此问题的赏金猎人的更新。我没有接受以下答案的原因是它只提供了一种解决方法,并没有解释为什么需要这种解决方法。我正在寻找原始问题的答案(如何使标签显示在正常的条形图中),或者寻找关于为什么必须使用堆叠条形图的合理解释(包括来源使您的答案变得更好!) . 如果是后者,示例代码或如何创建堆叠图表的解释也将不胜感激!

4

2 回答 2

1

根据:http : //forums.openflashchart.com/viewtopic.php?p=7433#p7433 这是最新版本的 OFC2 中的一个错误(至少)。我找到了导致#x_label# 问题的原因,但我对代码/Flash 的理解还不足以知道它为什么会发生/损坏。我做了一个快速修复,我需要进行更多测试,但它现在可以在条形图上使用。假设我没有破坏任何无法修复的东西,它将进入下一个社区版本。如果有人想在下一个版本之前更改源代码,请告诉我。

(我目前正在维护社区版本)

于 2011-01-05T21:35:20.483 回答
1

如果您对简单的条形视觉效果感到满意,则使用堆叠条形(将其与一个元素的数组一起使用将像简单条形一样绘制它)。那将正确替换#x_label#。
或者,您可以将缺少的代码从 Bars/Stack.as 复制到其他 bar 类型并重新编译代码。

于 2010-07-10T02:59:08.567 回答