2016-12-07 38 views
0

我想在ammap上使用dataloader功能,但我無法獲得。如何在ammap上使用dataloader

這裏是我嘗試:

var dogum_map = AmCharts.makeChart("il_bazinda_dogum_say_dagilim", { 
        "type": "map", 
        "data": { 
         "map": "turkeyLow" 
        }, 
        "theme": "light", 
        "colorSteps": 10, 
        "dataLoader": { 
         "url": "/dogum/dogum_frekans_verilerini_il_bazinda_hesapla", 
         "format": "json", 
         "showErrors": true 
        }, 
        "areasSettings": { 
        "autoZoom": false, 
        "balloonText": "[[value]]", 
        "selectable":true 
        }, 

        "valueLegend": { 
        "right": 10, 
        "minValue": "En Az", 
        "maxValue": "En Çok" 
        }, 

        "export": { 
        "enabled": true, 
        "fileName":"İl Bazında Doğum Sayıları" 
        } 

       }); 

有使用JSON url.This網址沒問題返回JSON DATAS是這樣的:

[{"id":"TR-01","ndogum":1111,"mdogum":22,"sdogum":693,"pdogum":336,"total":2162},{"id":"TR-02","ndogum":423,"mdogum":0,"sdogum":325,"pdogum":147,"total":895},{"id":"TR-03","ndogum":199,"mdogum":1,"sdogum":113,"pdogum":42,"total":355},{"id":"TR-04","ndogum":681,"mdogum":17,"sdogum":180,"pdogum":117,"total":995}] 

我想作爲地圖value使用total

如何在ammap上使用dataloader

感謝

回答

0

使用帶有地圖庫的DataLoader,您的數據需要相同的格式地圖的dataProvider對象,其中包括map財產和areas陣列。如果您的數據沒有以這種方式格式化,那麼您可以使用dataLoader的postProcess回調創建一個dataProvider對象,並將其與您的數據一起返回。您還需要重新映射您的總財產,以便對數據進行評估,以便您的氣球和圖例可以正常工作。

這裏的代碼的DataLoader:答覆

"dataLoader": { 
    "url": "/dogum/dogum_frekans_verilerini_il_bazinda_hesapla", 
    "postProcess": function(data) { 
     var dataProvider = { 
     "map": "turkeyLow" 
     }; 
     //create new areas array, while adding a value property 
     //to each area containing the value stored in total 
     dataProvider.areas = data.map(function(area) { 
     area.value = area.total; 
     return area; 
     }); 
     return dataProvider; 
    } 
    }, 

Codepen demo

+0

好,謝謝 – kodcu

相關問題