[英]D3.js Multiple GeoJSON objects
我試圖在兩個GeoJSON對象之間進行轉換,但是無法找到有關如何包含多個GeoJSON文件的任何信息。 我對最終轉換感到滿意,但在多個GeoJSON文件中找不到任何內容。
我現在可以像這樣繪制一張地圖:
d3.json("goldatt2.json", function (data) {
var group = canvas.selectAll("g")
.data(data.features)
.enter()
.append("g")
var path = d3.geo.path().projection(d3.geo.equirectangular());
var areas = group.append("path")
.attr("d", path)
我如何更改這個以便調用兩個GeoJSON文件並進行轉換?
我找到了這個例子, http://bl.ocks.org/mbostock/3081153但是在這個例子中只有GeoJSON對象然后被轉換為圓形。
獲取數據是轉換它的單獨任務。
理論上,您可以在決定對該數據執行任何操作之前 ,使用多個ajax調用來獲取所需的數據。
Mike Bostock為此目的實施了Queue 。 如果你正在使用帶有D3的JQuery,你可以查看Deferred的一個例子,在這里發布。
獲得所需的數據集后,您現在可以決定如何轉換數據或提供數據轉換。
偽代碼:
var files = ["file1.json", "file2.json"];
//Fetch Data for both files and create a data set object of this format
var dataset = {
"file1.json": {/*geojson data for file1*/},
"file2.json": {/*geojson data for file2*/}
}
for(var item in dataset) {
var data = dataset[item];
//Do whatever transformation you need
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.