为Flex图表设置基于系列的dataTipRenderer?

时间:2011-03-03 01:35:42

标签: flex flex3 flex4 flex-charting

我有一个Flex LineChart,其中包含三个系列:

  • 两个LineSeries
  • 一个ColumnSet

有没有人看到或听说过按系列设置dataTipRenderer的方法?你只能覆盖整个图表,我宁愿不必覆盖多个图表只是为了达到这个效果。

1 个答案:

答案 0 :(得分:3)

你找到了问题的答案吗?我想回答大卫戈沙泽的问题并建议你看看我做了什么:

有一种方法可以通过数据对象获取系列。你必须为dataTipRenderer选择一个实现IFlexDisplayObject和IDataRenderer的组件(例如canvas但它的mx),然后覆盖数据getter和setter,或者在你自己的DataTipRenderer类中实现接口(可选:扩展例如VGroup)并实现数据获取器和设置器。现在你可以将数据设置器中的value参数强制转换为HitData,然后检查元素对象是哪个类:

public override function set data(value:Object):void
{
    var hitData:HitData = value as HitData;
    if(hitData.element is LineSeries)
        // do lineseries stuff
    else if(hitData.element is ColumnSeries)
        // do columnseries stuff
}

现在您知道哪个系列采用渲染器,您可以渲染单个数据提示。

希望这有帮助!