本示例使用了我在其他純粹的d3項目中使用過的topojson文件,並且在沒有此問題的情況下在這些上下文中填充了#RUS。
你必須誤會因爲你的TopoJSON文件實際上已損壞。請直接從服務器看到這個文件的示例:http://plnkr.co/edit/QOTwV3?p=preview請注意,我使用的是簡單的TopoJSON和Leaflet的GeoJSON圖層,但它產生了完全相同的結果。
PS。你有什麼理由爲什麼你使用D3?因爲我看到你在做什麼可以使用Leaflet和TopoJSON,沒有D3。這裏有一個簡單的例子:
function delay(features) {
var geojsonLayer = new L.GeoJSON(null, {
style: getStyle,
}).addTo(map);
var delay = 100;
features.forEach(function(feature) {
delay = delay + 100;
setTimeout(function() {
geojsonLayer.addData(feature);
}, delay);
});
}
var url = 'http://crossorigin.me/http://dataviz.du.edu/projects/scratch/worldnew.json';
$.getJSON(url, function(data) {
var geojsonData = topojson.feature(data, data.objects.test);
delay(geojsonData.features);
});
來源
2015-09-15 11:38:55
iH8
謝謝。不,在這種情況下沒有充分的理由使用D3。我對d3比單張更熟悉,所以我很欣賞指針,我可以在沒有D3的情況下做到這一點。 –