2013-07-23 86 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(); 
    

,比創建圖表再次。