【问题标题】:Highcharts time X axisHighcharts时间X轴
【发布时间】:2016-04-22 16:18:36
【问题描述】:

我想问是否有人知道如何将 Highcharts 中的 X 轴设置为时间。我的应用程序是从数据库中获取数据,样本的频率是 250 毫秒。我希望 X 轴不显示计数值,而是显示时间。我一次渲染 2500 个值,这意味着 10 秒。最好的方法是在 X 轴上每 0.5 秒有一个标记,这意味着每 125 个样本一个标记。像(0 个样本 = 0 秒);(125 个样本 = 0.5 秒);(500 个样本 = 1 秒);(725 个样本 = 1.5 秒)

感谢您的意见.....

                                chart () {
                                    var options = {
                                        chart: { 
                                            renderTo: 'services',
                                            type: 'line', 
                                            animation: 'false'
                                        },

                                      plotOptions: {
                                            series: {
                                                animation: {
                                                    duration: 10000
                                                }
                                            }
                                        },

                                        series: [{marker: {
                                                    enabled: false
                                                }}]
                                      };

【问题讨论】:

  • 你能说清楚一点吗?您是否只需要以“0.5”的间隔绘制 X 轴“刻度”并让它们具有后缀为“sec”的标签还是比这更复杂?
  • this 可能会有所帮助
  • 我需要将每 125 个样本标记半秒......现在它默认标记每 500 个渲染样本图表。因此,X 轴上的序列在渲染 500 个样本后进行标记。我们可以说它标记了每 500 个样本。所以它就像 0.......500......1000......1500......2000......2500。我需要在每 125 次之后拥有它,并且应该以 0.5 秒为标记。每 125 个样本是 0.5 秒。
  • 最重要的是,它应该代表图表的时间流,就像显示图表运行多长时间一样。现在,每次我用新样本渲染图表时,时间流都会再次从零开始。 @apokryfos
  • 您看过演示 (highcharts.com/demo) 和 API 文档 (api.highcharts.com/highcharts#xAxis) 了吗?除非您有更具体的问题,否则您只需要回答您的问题即可。

标签: highcharts time-series axis


【解决方案1】:

您可以提供自定义标签格式化程序。比如……

xAxis: {
    labels: {
        formatter: function () {
            return (baseTime + (this.value / 500)) + " sec";
        }
    }
},

baseTime 是第一个数据点的时间。

自定义标签格式化程序的文档可以在...上找到。

http://api.highcharts.com/highcharts#xAxis.labels.formatter

【讨论】:

  • 是的!它显示了 X 轴上的时间,唯一的问题是在渲染新的一堆数据后,时间又从零开始......
  • @FilipMartiak 然后在渲染新数据时更改baseTime 值。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-08-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多