Установить dataTipRenderer на последовательной основе для диаграмм Flex?

У меня есть Flex LineChart, который содержит три серии:

  • две LineSeries
  • один набор столбцов

Кто-нибудь видел или слышал о способе установки dataTipRenderer для каждой серии? Вы можете переопределить его только для всей диаграммы, и я бы предпочел не накладывать несколько диаграмм только для достижения этого эффекта.


person sean    schedule 03.03.2011    source источник
comment
Вам нужен другой текст в подсказке с данными или вы хотите, чтобы подсказка имела другой вид?   -  person David Goshadze    schedule 03.03.2011
comment
Как я уже просил, мне нужен способ установить другой dataTipRenderer для каждой серии.   -  person sean    schedule 03.03.2011
comment
Я понимаю, о чем вы спросили. У вас не может быть dataTipRenderers для каждой серии. Но я мог бы предложить вам обходной путь. И я просил вас прояснить ваш вопрос.   -  person David Goshadze    schedule 03.03.2011


Ответы (1)


ты нашел ответ на свою проблему? Я хочу поднять вопрос Давида Гошадзе и предложить вам посмотреть, что я сделал:

есть способ получить серию по объекту данных. вы должны выбрать для dataTipRenderer компонент (например, холст, но его mx), который реализует IFlexDisplayObject и IDataRenderer, а затем переопределить средство получения и установки данных, или вы реализуете в своем собственном классе DataTipRenderer интерфейсы (необязательно: расширяет, например, VGroup) и реализуете средство получения и установки данных. теперь вы можете привести параметр значения в установщике данных к 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
}

теперь вы знаете, какие серии принимают рендерер, и можете рендерить отдельные подсказки.

надеюсь это поможет!

person David    schedule 14.04.2011