3

2 つの GeoJSON オブジェクト間を移行しようとしていますが、複数の GeoJSON ファイルを含める方法に関する情報を見つけることができませんでした。最終的な変換には満足していますが、複数の GeoJSON ファイルで何も見つかりません。

現在、次のように 1 つのマップをプロットできます。

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)

2 つの GeoJSON ファイルを呼び出して変換できるようにするには、これをどのように変更すればよいでしょうか?

http://bl.ocks.org/mbostock/3081153という例を見つけましたが、この例では GeoJSON オブジェクトしかなく、円に変換されます。

4

1 に答える 1

0

データの取得は、データの変換に関して別のタスクです。

したがって、理論的には、必要なデータを取得するために複数の 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
}
于 2014-05-06T02:56:57.037 に答える