0

US Census ACS APIを使用して、米国のすべての郡のデータを抽出しています。次に、値に基づいてシェーディングされた郡レベルのコロプレス マップを生成したいと考えています。静的データ ファイル (市外局番: 値を含む CSV) があれば、データをレンダリングできます。ただし、API からのデータは次のように返されます。

0: "B08101_025E"
1: "NAME"
2: "state"
3: "county"
...
0: "42"
1: "Autauga County, Alabama"
2: "01"
3: "001"

上記のように見えるように、データは :value で必要と思われます (ヘッダー要素を無視します):

01001: 42

私は、データのフォーマットと期待される出力がどうあるべきかについて混乱していると思います。最後に、私がやっていることはこれです:

    var pad = d3.format("05d"),
    quantize = d3.scale.quantile().domain([0, 15]).range(d3.range(9));

    d3.json("us-counties.json", function (json) {
        counties.selectAll("path")
        .data(json.features)
        .enter().append("svg:path")
        .attr("class", function (d) {
            return "q" + quantize(dataSet[pad(d.id)]) + "-9";
        })
        .attr("d", path)
        .on("click", click)
        .append("svg:title")
        .text(function (d) {
            return d.properties.name + ": " + dataSet[pad(d.id)] + "%";
        });
    });

これはここから取られます。dataSet[pad(d.id)]データが必要と思われるキーと値のペアに含まれていないため、ヒットがないことに注意してください。これを期待される形式で取得するにはどうすればよいですか? 私はdataSet2次元配列にしようとしました:

0: "01001"
1: 42

これはまだ望ましい結果が得られていません。

4

2 に答える 2

0

まあ、質問をするのは役に立ちそうです。その後、もう一度問題を調べて、次のことを行いました。

    var dataObj = {};
            d3.json(jsonRequest, function (data) {
                $.each(data, function (key, val) {
                    if (key > 0) {
                        var apiValue = parseInt(val[0], 10);
                        var apiState = val[2];
                        var apiCounty = val[3];
                        //var elmentArray = [apiState + apiCounty, apiValue];
                        //dataSet.push(elmentArray);
                        dataObj[apiState + apiCounty] = apiValue;
                    }
                });
...
 return d.properties.name + ": " + dataObj[pad(d.id)] + "%";

唯一の問題は、データ ソースを変更してもデータが更新されないことです。

于 2013-11-01T13:20:11.270 に答える
0

Rのacs パッケージは、ACS データを取得するためのもう 1 つの便利な方法です (API 経由ですが、使いやすい)。

また、R (acs パッケージを含む) を使用して国勢調査データから色分けされたマップを作成することについて、有用で広範な議論がありました。例を以下に示します。

http://blog.revolutionanalytics.com/2009/11/choropleth-map-r-challenge.html

http://eglenn.scripts.mit.edu/citystate/tag/acs/

https://gist.github.com/hadley/233134

于 2013-12-20T19:13:44.280 に答える