4
我有一個非常大的數據集(約500 000條記錄...),我想用地圖和圖表使用交叉過濾器顯示倫敦的二氧化碳排放量。由於性能的原因,我想事先通過自治市鎮進行查詢,所以我做了一個ajax函數,當我點擊一個自治市鎮時,它會動態地實現這個功能(想象一下倫敦的地圖和我們可以點擊它們的區域邊界) 。 Ajax代碼工作正常:使用帶有交叉過濾器的'Ajax updated'數據集
function load_data(str){
var londonData = null;
$.ajax({
url: "php/london-data.php",
data: "name='"+str+"'",
type: 'get',
async: false,
success: function(data) {
londonData = data;
}
});
alert(JSON.stringify(londonData));
return londonData;}
它返回一個JSON文件。當我點擊自治市鎮時,警報功能會告訴我數據已更新。 但是爲了使用交叉過濾器,我希望有一個全局變量,當你點擊一個自治區時更新,這要歸功於load_data函數,但它不起作用 - >變量保持與初始化時相同的值。
我不知道我是否足夠清楚,但您是否認爲有解決方案來更新此全局變量,並因此更新交叉過濾器數據?喜歡的東西:
layer.on("click", function (e) {
londonData = load_data(/*name of the layer clicked on*/)
});
dataset = crossfilter(londonData);
最後我想,我的圖表更新,當我點擊一個區,所以「數據集」變量改變,當我點擊一個。不知道是否有可能,或者我是否完全錯誤... 無論如何謝謝您的幫助。