0

嗨,伙计们,我需要你的帮助。我正在使用Highcharts-NG来制作图表,但我有一个小问题。我有我的图表工作,我正在将实时数据推送到我的图表,它工作得很好,但是每次我向系列插入一个点时,我想插入时间戳而不是 X 值“1”、“2”、“3”在 x 轴上。在普通的 highcharts 中很容易使用该功能addPoint(),但highcharts-ng我没有该功能。有人可以帮我吗?

这是我的工作文件:http: //jsfiddle.net/zrKEb/

4

2 回答 2

0

这是我使用带有 highcharts-ng 指令的 addPoint 函数的解决方案:

$scope.chart_realtimeForceConfig = {
options: {
  chart: {
    type: 'line',
  },   
  xAxis: { 
    type: 'datetime' ,         
    labels: {
    format: '{value:%H:%M:%S %Y}'
    }
    },
},
series: [{
  name: 'Fx',
  data: [],

}, ],
func: function(chart) {
  $timeout(function() {
    chart.reflow();

  }, 300);

  $interval(function() {

    var shift = chart.series[0].data.length > 100;

    chart.series[0].addPoint([Date.now(),Math.floor(Math.random() * 100) + 1], true, shift, false);
  }, 1000);
},
loading: false

}

});

日期格式在图表中完成

http://codepen.io/ruisebastiao/pen/BKmQQz

于 2016-04-04T22:33:13.180 回答
-1

经过大量解决方法后,我找到了一种解决方案,但我不知道这是否是做我想做的最好的方法。

$scope.highchartsNG.xAxis.categories.push($filter('date')(new Date(), "mediumTime"));

这会将时间戳现在的值推送到 Xaxis 并对其进行过滤。最终结果将是格式为“h:mm:ss a”的值 如果有人有其他解决方案,请回答我的问题。

于 2016-01-25T17:33:17.943 回答