0

我有一个包含三个系列的 Flex LineChart:

  • 两条线系列
  • 一个列集

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

4

1 回答 1

3

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

有一种方法可以通过数据对象获取系列。您必须为 dataTipRenderer 选择实现 IFlexDisplayObject 和 IDataRenderer 的组件(例如画布,但它的 mx),然后覆盖数据获取器和设置器,或者您在自己的 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
}

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

希望这可以帮助!

于 2011-04-14T09:38:40.017 回答