2015-04-25 3 views
0

Итак, у меня есть график (упрощенный):Автоматическое обновление аннотаций в тх: ColumnChart

<fx:Declarations> 
    <mx:SolidColor id="solidColor" color="0x90ee90"/> 
    <mx:SolidColorStroke id="solidColorStroke" color="0x90ee90"/> 
</fx:Declarations> 

<mx:ColumnChart id="columnChart" width="100%" height="100%"> 
    <mx:annotationElements> 
     <mx:CartesianDataCanvas id="cartesianDataCanvas" includeInRanges="true"/> 
    </mx:annotationElements> 

    <mx:horizontalAxis> 
     <mx:DateTimeAxis id="dateTimeAxis"/> 
    </mx:horizontalAxis> 

    <mx:horizontalAxisRenderers> 
     <mx:AxisRenderer axis="{dateTimeAxis}"/> 
    </mx:horizontalAxisRenderers> 

    <mx:verticalAxis> 
     <mx:LinearAxis id="linearAxis" baseAtZero="false"/> 
    </mx:verticalAxis> 

    <mx:verticalAxisRenderers> 
     <mx:AxisRenderer axis="{linearAxis}"/> 
    </mx:verticalAxisRenderers> 

    <mx:series> 
     <mx:ColumnSeries xField="time" yField="value" fill="{solidColor}" stroke="{solidColorStroke}"/> 
    </mx:series> 
</mx:ColumnChart> 

Время от времени в графике обновляется columnChart.dataProvider. Мне нужно нарисовать над этой диаграммой две горизонтальные линии (для минимальных и максимальных значений) и еще что-то. Я знаю, что все это можно сделать в annotationElements по телефону cartesianDataCanvas.

Вопрос: В какой момент (или какое событие) следует перерисовывать аннотации, чтобы они всегда соответствовали фактическим данным?

Я попытался сделать это сразу после обновления columnChart.dataProvider. Но это слишком рано - в dateTimeAxis и linearAxis не успели рассчитать новые значения min и max. Глупо вычислять их вручную.

ответ

0

Я полагаю, вы можете попробовать change событие на ColumnChart как:

<mx:ColumnChart id="columnChart" width="100%" height="100%" change="handleChange(event)"> 
</mx:ColumnChart> 

Затем в методе handleChange вы можете сделать всю работу.

+0

Я могу попробовать все, и вы можете верить в то, что хотите, но иногда вам нужно прочитать документацию. http://flex.apache.org/asdoc/mx/charts/chartClasses/ChartBase.html#event:change –

Смежные вопросы