Hi Ely,

Sorry if I confused you.  If I let flex handle the min/max value, I am
not getting the time axis I'm looking.  Say for example, the current
time is 4:01:00.  Consider a collection with size = 60.  It consists
of data for the last 60 seconds.  If I let flex handle it, the h-axis
will only show 4:00:00 to 4:01:00.  But what I really want is for the
h-axis to show the time from 4:00:00(min) to 4:03:00 (max)
(T+3minutes).  As more data arrives each second, I want the min and
max to change to reflect the times that are in the collection.

Once I assign a min/max to the chart, is there a way to update it
according to new values in the dataProvider?

The only way I was able to make it change was if I created a button
which sets a new Min/Max.  I would need to consistently click on the
button to create the moving window of (T + 3). 


--- In flexcoders@yahoogroups.com, "Ely Greenfield" <[EMAIL PROTECTED]> wrote:
>
>  
>  
> I'm a little confused by your question. If you're explicitly assigning a
> min/max value, you're telling the chart you don't want it to generate
> automatic min/max values.  If you're asking how to remove your
> previously assigned min/max and ask it to restart automatically
> generating min/max values, just set the min/max of the axis to
> undefined.
>  
> Ely.
>  
> 
> ________________________________
> 
> From: flexcoders@yahoogroups.com [mailto:[EMAIL PROTECTED] On
> Behalf Of polonycjunk
> Sent: Wednesday, December 06, 2006 9:42 AM
> To: flexcoders@yahoogroups.com
> Subject: [flexcoders] Dynamic Min/Max for chart axis not updating
> automatically.
> 
> 
> 
> Once a minimum/maximum value is assigned to the DateTimeAxis, how can
> i get a realtime chart to update the min/max values depending on its
> dataProvider and keep it updating?
> 
> Here is some code to illustrate:
> Note: dataProvider is an ArrayCollection of size 100. if size = 100,
> the date at index 0 is removed and the next date is added.
> 
> private var _minimum:Date=null;
> [Bindable]
> public function get minimum():Date{
> if(this.dataProvider == null){ 
> _minimum = new Date(); 
> _minimum.setHours(9,0,0,0); 
> }else{
> _minimum = this.dataProvider.getItemAt(0).date;
> 
> }
> return _minimum; 
> }
> 
> private var _maximum:Date=null;
> [Bindable]
> public function get maximum():Date{
> if(this.dataProvider == null){
> _maximum = new Date(); 
> _maximum.setHours(16,0,0,0);
> }else{
> if(_zoomLevel == "seconds"){
> _maximum.setHours(_minimum.hours, _minimum.minutes +3,
> _minimum.seconds,_minimum.milliseconds); //I want my maximum to
> change whenever my minimum changes.
> }
> } 
> return _maximum; 
> }
> 
> MXML code:
> 
> <mx:horizontalAxis>
> <mx:DateTimeAxis id="hTimeAxis" labelUnits="minutes"
> dataUnits="minutes" interval="20" displayLocalTime="true"
> alignLabelsToUnits="true" minimum="{minimum}" maximum="{maximum}" /> 
> </mx:horizontalAxis>
>


Reply via email to