0

我有这个函数来制作一个 d3-geomap,当我的应用程序第一次加载时调用它。但是如何在不重新绘制全新地图的情况下使用新数据更新地图?

function buildMap(dataToShow){

        var map = d3.geomap.choropleth()
                .geofile('https://d3-geomap.github.io//d3-geomap/topojson/world/countries.json')
                .colors(colorbrewer.YlGnBu[9]) 
                .column('figure') 
                .format(function(d) {return (Math.round(d * 10) / 10).toFixed(2)+"%";}) 
                .legend(true)
                .unitId('ccode')
                .domain(chartDomain)
                .zoomFactor(5);


         d3.select('#map')
            .datum(dataToShow)
            .call(map.draw, map);
    }
4

1 回答 1

1

假设您的数据位于名为 newData 的列中,则需要进行以下调用

map.column(newData).update()

这应该自己处理所有事情。

于 2016-12-20T12:15:50.607 回答