【问题标题】:Highcharts data off by one dayHighcharts 数据减少了一天
【发布时间】:2012-04-27 15:23:49
【问题描述】:

我有一个似乎无法修复的 Highchart。 xAxis 上的日期是正确的,但标签上的日期相差一天。无论我将什么数据传递给我的图表,它总是会延迟一天。我一直在拔头发试图弄清楚这一点。任何提示将不胜感激。

您可以在此处查看我的代码: http://jsfiddle.net/brenjt/zxBTG/2/

【问题讨论】:

    标签: javascript datetime highcharts


    【解决方案1】:

    刚刚找到您的问题...我认为解决您的问题的方法是将 UTC 时区选项设置为 false。这会将图表时区设置为本地时区,而不是 UTC。

    Highcharts.setOptions({
        global : {
            useUTC : false
        }
    });
    

    见:http://api.highcharts.com/highcharts#global.useUTC

    【讨论】:

    • 这显然解决了这个问题,但我不明白为什么不能从初始图表配置中直接设置,而不是调用 setOptions。有人解释一下吗?
    • @MrWater,我不知道你为什么需要调用setOptions,除了文档似乎只允许它通过那里。有关此设置如何影响问题的文档在这里非常清楚:api.highcharts.com/highcharts#global.useUTC
    【解决方案2】:

    好吧,我在轴和工具提示中添加了时间信息,请参阅http://jsfiddle.net/gATfu/
    看起来您的时间戳是从晚上 10 点开始的,但轴标签显示的是上午 0 点……这就是为什么这些点看起来大约偏移了一天。

    【讨论】:

      【解决方案3】:

      这是因为时区。您应该使用 Date.UTC(..) 将日期转换为 UTC 格式。它会工作

      【讨论】:

      • 我已经使用 Date.UTC() 转换了我的日期,但没有运气,不得不使用@Tony 提供的解决方案
      【解决方案4】:

      UTC 的全局 HighCharts 选项效果很好。我还不能投票赞成:(

      我还发现 HighCharts 会根据 dgw 描述的确切时间戳移动我的条形图。 IE。根据缩放比例,从 5 月 1 日开始的日期可以在 4 月 30 日附近显示。这让我很困惑,因为有两个 4 月 30 日的条目,而没有 5 月 1 日的条目。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-04-08
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多