2013-07-23 58 views
0

我需要的是动态地将从外汇交易商收到的点数添加到Shield UI图表。根据文档,没有动态添加点的可能性至少没有这样的方法,例如:AddPoint或类似的。 我怎样才能使用Shield UI Chart来实现一个网页,该网页不断显示几个汇率?动态地将外汇数据点添加到Shield UI图表

回答

0

你说得对,Shield UI图表没有addPoints方法。但是我们可以将传入的数据值添加到数组中。您可能会发现以下有用的代码:

  1. 我们需要一些数组 - 我们需要显示的数量。

    var EURUSD = new Array(); 
        var USDCAD = new Array(); 
        var GBPUSD = new Array(); 
    
  2. 在函数体,实际上将显示我们将有下面的代码中的数据:

    EURUSD[EURUSD.length] = parseFloat(data.ticks.EURUSD); 
        USDCAD[USDCAD.length] = parseFloat(data.ticks.USDCAD); 
        GBPUSD[GBPUSD.length] = parseFloat(data.ticks.GBPUSD); 
    

    它实际上把新的数据到指定的数组。你可以注意到,每一次接收数据时,它已被添加到每个数组的最后一个索引:

    EURUSD.length 
    
  3. 因为我们不希望我们的阵列增长过大,这是好事,说明如何我们需要保持很多点。一旦达到该限制,我们删除了最早的点:

       if (EURUSD.length > 50) 
            EURUSD = EURUSD.splice(1, 49); 
    
           if (USDCAD.length > 50) 
            USDCAD = USDCAD.splice(1, 49); 
    
           if (GBPUSD.length > 50) 
            GBPUSD = GBPUSD.splice(1, 49); 
    
  4. 同时,我们需要重新创建图表的最后,引用相应的容器:

       var containter = $("#EURUSDChart").swidget(); 
           containter.destroy(); 
    

,比创建图表再次。