如何在具有辅助系列的图表上显示/隐藏数据提示

时间:2011-02-13 23:09:27

标签: flex flex4

我有一个折线图,其中柱形图作为辅助系列。当我滚过该行时,会出现数据提示。但是,如果我将鼠标移动到仍在行上的列出现的位置,则会显示行和列的数据提示项。如何获取它以便我只显示该行的数据提示而不显示该列?

<mx:AreaChart id="areachart" dataProvider="{data}" showDataTips="true" >
    <mx:series>

    <mx:AreaSeries id="areaSeries" xField="date" yField="volume" >
    </mx:AreaSeries>


    <mx:ColumnSeries id="secondSeries" xField="date" yField="name" >
    </mx:ColumnSeries>

    </mx:series>

</mx:AreaChart>

2 个答案:

答案 0 :(得分:5)

或者,您可以将列的交互属性设置为false:

   <mx:ColumnSeries id="secondSeries" xField="date" yField="name" interactive="false">
   </mx:ColumnSeries>

这将阻止列响应鼠标输入。

答案 1 :(得分:1)

Subclass AreaChart并覆盖findDataPoints方法以过滤掉您不想要的数据点:

public class CustomAreaChart extends AreaChart
{
    public override function findDataPoints(x:Number, y:Number):Array
    {
        var originalDPs : Array = super.findDataPoints(x, y);
        var filteredDPs : Array = [];

        for each (var hd : HitData in originalDPs)
        {
            if (hd.chartItem.element is AreaSeries)
                filteredDPs.push(hd);
        }

        return filteredDPs;
    }
}

然后使用这个新类而不是AreaChart。

相关问题