【问题标题】:Flex DateTimeAxis: Control over what times get used?Flex DateTimeAxis:控制使用什么时间?
【发布时间】:2011-05-10 13:05:37
【问题描述】:

当被要求显示弹性图时,我们从外部来源获得最小和最大时间,因此我们使用DateTimeAxis 来显示时间 (x) 轴。正因为如此,我们不能硬编码labelUnitsinterval,但是默认实现还有一些不足之处。有人知道帮助 DateTimeAxis 自动配置 labelUnitsinterval 更有用的库吗?

在以下示例中,它在 01:04 放置第一个标签,在 01:18 放置下一个标签。什么? 01:15 和下一个 01:30 将是用户友好的。输入interval="15",我们得到 01:04 和 01:19 - 并没有好多少。

这是一个完整的例子。 (用这些minimummaximum 省略labelUnits 根本没有标签,所以我把它放进去):

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="horizontal">
    <mx:DateFormatter id="df" formatString="JJ:NN:SS" />
    <mx:Script>
        <![CDATA[
            private const minimum:Date = new Date( "Apr 1 2011 01:03:54 AM");
            private const maximum:Date = new Date( "Apr 1 2011 03:07:54 AM");
            private function labelFunction(item:Object,
                                           field:String,
                                           index:Number):String {
                return df.format(item as Date);
            }
        ]]>
    </mx:Script>

    <mx:CartesianChart width="600" height="200">

        <mx:horizontalAxis>
            <mx:DateTimeAxis
                minimum = "{minimum}"
                maximum = "{maximum}"
                displayLocalTime="true"
                labelFunction="labelFunction"
                labelUnits="minutes"
            />
            <!--
                interval="15"
            -->
        </mx:horizontalAxis>

    </mx:CartesianChart>

</mx:Application>

给这个

我宁愿不必重新发明轮子并根据以下公式计算 labelUnitsinterval

  • 最短和最长时间
  • 图形的宽度
  • 字体大小
  • 还有什么?

所以我希望我错过了一些东西或 AutoDateTimeAxis 或一些这样的实现.. ;-) 你知道吗?

【问题讨论】:

    标签: apache-flex charts flex-charting


    【解决方案1】:

    我在 DateTimeAxis 上遇到了类似的问题,最终改用了类别轴,使用自定义标签函数来格式化日期标签。

    如果您的范围同时跨越 DST 和非 DST,夏令时会出现类似的错误,由于重叠中的额外/缺失时间,间隔将永远不会匹配。

    【讨论】:

      猜你喜欢
      • 2015-07-14
      • 1970-01-01
      • 1970-01-01
      • 2016-12-27
      • 1970-01-01
      • 1970-01-01
      • 2014-11-07
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多