动态地将外汇数据点添加到Shield UI Chart

时间:2013-07-23 09:58:37

标签: shieldui

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

1 个答案:

答案 0 :(得分:0)

你是对的,Shield UI Chart没有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();
    
  5. 然后再次创建图表。