我有一个Flex LineChart,其中包含三个系列:
有没有人看到或听说过按系列设置dataTipRenderer的方法?你只能覆盖整个图表,我宁愿不必覆盖多个图表只是为了达到这个效果。
答案 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
}
现在您知道哪个系列采用渲染器,您可以渲染单个数据提示。
希望这有帮助!