如何在DateTimeAxis上精确覆盖24小时?最小/最大值似乎不起作用



我想沿着datetimeaxis显示完整的24小时,无论输入的值恰好落在哪里。我以为在图表上设置日期时间轴的最小值和最大值会有这样的效果。

所以我有

private function loadDayComplete():void{ //called when data is reloaded. also includes reassigning the dataprovider of the chart.
 minChartDate = new Date;
 minChartDate.fullYear = currentDate.fullYear; 
 minChartDate.month = currentDate.month;
 minChartDate.date = currentDate.date;
 minChartDate.hours=0;
 minChartDate.minutes=0;
 minChartDate.seconds=0;
 minChartDate.milliseconds=0;
 maxChartDate = new Date; 
 maxChartDate.time = minChartDate.time + 1000*60*60*24;
 bgResults = _day.BGResults;
 bgTimeAxis.minimum = minChartDate;
 bgTimeAxis.maximum = minChartDate;
 glucoseSeries.dataProvider = bgResults;
}

currentDate是表示在DateField中选择的任何日期的日期。

然后是

<mx:DateTimeAxis id="bgTimeAxis" dataUnits="hours" parseFunction="parseDateString" 
displayLocalTime="true" minimum="{minChartDate}" maximum="{maxChartDate}">

当我加载函数时,虽然它没有绘制任何点,当最小值和最大值设置。如果我把最小值和最大值拿出来,它们就会显示得很好!我在调试模式下仔细检查了minChartDate和maxChartDate应该是什么。但也许我误解了最小值和最大值应该如何起作用……我还试着扩大最小/最大范围,以包括几天,但仍然没有运气。

我也尝试分配最小/最大时,图表数据变化如下:

我发现,当在mxml中设置时,它不能保持设置的最新状态,所以我不得不将

 bgTimeAxis.minimum = minChartDate;
 bgTimeAxis.maximum = maxChartDate;
在populateData函数中

,然后它工作了。我以为我已经尝试过了,但是有一个语法错误,并且没有意识到我的解决方案实际上是一个解决方案。

相关内容

  • 没有找到相关文章

最新更新