首页 文章

如何在x轴上获得高图日期?

提问于
浏览
110

是否有标准方法在Highcharts的x轴上获取日期?在他们的文档中找不到它:http://www.highcharts.com/ref/#xAxis--type

当我的时间范围足够大时,它会显示日期 . 但是,当时间范围不够大时,它只显示小时数,如下所示:

enter image description here

这不太理想......如果它能在这种情况下显示日期和时间,那就太棒了 . 谁知道怎么样?

3 回答

  • 239

    Highcharts会自动尝试找到当前缩放范围的最佳格式 . 如果xAxis的类型为 'datetime' ,则会执行此操作 . 接下来计算当前缩放的单位,它可以是以下之一:

    • 分钟

    • 小时

    然后使用该单元查找轴标签的格式 . 默认模式是:

    second: '%H:%M:%S',
    minute: '%H:%M',
    hour: '%H:%M',
    day: '%e. %b',
    week: '%e. %b',
    month: '%b \'%y',
    year: '%Y'
    

    如果您希望该日成为"hour" -level标签的一部分,则应更改该级别的 dateTimeLabelFormats 选项,包括 %d%e . 这些是可用的模式:

    • %a:工作日短,如'Mon' .

    • %A:工作日很长,比如'Monday' .

    • %d:一个月中的两位数日期,01到31 .

    • %e:每月的日期,1到31 .

    • %b:短月,如'Jan' .

    • %B:长月,如'January' .

    • %m:两位数的月份编号,01到12 .

    • %y:两位数年份,如2009年的09年 .

    • %Y:四位数年份,如2009年 .

    • %H:24小时格式的两位数小时,00到23 .

    • %I:12h格式的两位数小时,00到11 .

    • %l(小写L):12小时格式,1到11小时 .

    • %M:两位数分钟,00到59 .

    • %p:大写AM或PM .

    • %P:小写AM或PM .

    • %S:两位数秒,00到59

    http://api.highcharts.com/highcharts#xAxis.dateTimeLabelFormats

  • 15

    从Highcharts API中检查这个sample .

    替换它

    return Highcharts.dateFormat('%a %d %b', this.value);
    

    有了这个

    return Highcharts.dateFormat('%a %d %b %H:%M:%S', this.value);
    

    关于 dateFormat() 函数,请查看here .

    另见 - tickIntervalpointInterval

  • 30

    你这样写 - :

    xAxis: {
            type: 'datetime',
            dateTimeLabelFormats: {
               day: '%d %b %Y'    //ex- 01 Jan 2016
            }
    }
    

    还检查其他日期时间格式

    http://api.highcharts.com/highcharts#xAxis.dateTimeLabelFormats

相关问题