2017-03-03 42 views
0

我正在使用highchart,我想更新我的網絡工作者的highcharts系列。我的網絡工作者正在通過xmlhttprequest從我的api接收數據,現在我想更新我的圖表而無需刷新網頁,以及如何將這些數據傳遞給highcharts系列?如何將我的webworker的數據提供給highchart

+0

這實際上取決於您獲取的數據格式,以及是否想要完全覆蓋圖表中的現有數據,或者只是更新數據點和/或添加新的數據點。 – wergeld

+0

我正在收回json,我只想更新點數。它的折線圖我想根據數據移動線條 –

+0

如果你的xAxis不會改變,你可以使用'series.setData' - http://api.highcharts.com/highcharts/Series.setData。 – wergeld

回答

0

您需要使用onMessage事件,並將消息從worker發佈到客戶端。消息應該是stringyfied對象或數組。

在主代碼:

var worker = new Worker('w/main-worker.js'); 
worker.postMessage('message to worker'); 

worker.onmessage = function(e) { 
    console.log(e.data); 
    // do stuff with data from worker 
}; 

在你的工人:

// do stuff 
// when stuff is ready 
postMessage(myStuff); 

// handle messages from the main thread 
onmessage = function(e) { 
    console.log(e.data); 
    // do stuff with message from main thread 
}; 

我有幾個演示在這裏:https://github.com/mchaov/WebWorkers有類似的用例像你這樣的演示。

相關問題