首页 > 解决方案 > Highcharts 不渲染从 Flask-socketio 接收到的值

问题描述


        var myChart = Highcharts.chart('containerX', {

        chart: {
          type: 'spline',
          animation: Highcharts.svg, // don't animate in old IE
          marginRight: 10,
          events: {
              load: function () {

                  var socket = io.connect('http://' + document.domain + ':' + location.port + '/test');
                  var series = this.series[0]

                  var numbers_received = []
                  socket.on('newnumber', function(msg) {



                        var x = (new Date()).getTime() // current time
                        var y = msg.number

                        series.addPoint([x, y], true, true);
                  });                  
                 ......

Highchart 的 x 轴在我的 HTML 页面上基于 移动(new Date()).getTime(),y 轴根据从 flask-socketio 接收到的值进行缩放,但图表上没有显示任何内容。

ps:收到的值每秒都在变化。

我还可以看到msg.number终端上显示的值。

任何人都可以帮忙吗?我是 highcharts 和 flask-socketio 的新手。谢谢。

标签: javascripthtmlhighchartsflask-socketio

解决方案


您需要将yaddPoint作为数字而不是字符串传递给方法。

var y = parseFloat(msg.number);

现场演示:http: //jsfiddle.net/BlackLabel/6m4e8x0y/4908/


推荐阅读