2011-03-03 50 views
0

我有一個Flex線型圖包含三個系列:爲Flex圖表設置dataTipRenderer?

  • 2個供LineSeries
  • 一個ColumnSet

有沒有人見過或聽說過的方法來設置dataTipRenderer在每個系列的基礎是什麼?您只能覆蓋整個圖表,我寧願不必爲了實現這種效果而疊加多個圖表。

+0

您是否在數據提示中使用不同的文本,或者您希望dataTip具有不同的外觀? – 2011-03-03 06:34:35

+0

就像我問,我想要一種方法來設置一個不同的dataTipRenderer在每個系列的基礎上 – sean 2011-03-03 08:51:37

+0

我明白你問了什麼。您不能擁有基於每個系列的dataTipRenderer。但我可以建議你解決方法。我已經要求你澄清你的問題。 – 2011-03-03 11:48:19

回答

2

您是否發現問題的答案?我想拿起大衛goshadze的問題,並建議你看看我做了什麼:

有一種方法來獲取數據對象的系列。你必須爲dataTipRenderer選擇一個實現了IFlexDisplayObject和IDataRenderer的組件(例如canvas,但是它的mx),然後重寫數據獲取器和設置器,或者在你自己的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 
} 

現在你知道哪個系列採取渲染器和可以渲染個人數據提示。

希望這有助於!