2

geojson シェイプ ファイルを d3 に読み込む作業を行っています (この設計のバックグラウンドは初めてです)。Ordnance Survey によって提供される英国の投票選挙区の地図があります。これを WG8 プロジェクションを使用して単純化されたシェープファイルに変換し、これをhttp://bl.ocks.org/2206590と同様の Mike Bostock チュートリアルで使用することができました。私はこれでかなりうまくいきました。問題は、シェープ ファイルが 5.2 MB と巨大であるため、これを topojson 形式に変換しようとしていることです。http://bost.ocks.org/mike/map/のティトリアルに従ってみましたが、いくつかの問題に遭遇しました

  1. 私の Mac には Homebrew がありません。私たちのマシンへのアクセス権限は非常に厳重にロックされており、技術者は私たちのためにソフトウェアをインストールすることはありません. http://www.shpescape.com/のトランスレーターにシェイプ ファイルを渡すことでこれを回避しましたが、生成される topojson ファイルであるシェイプ ファイルには、私が作業しているチュートリアルの構文がまったく含まれていないと思います。それを変更する方法がわかりません。そのサンプルはこんな感じ

    {"objects": {"pcon_gb_2010_area 1": {"type": "GeometryCollection","geometries":[{"type":"Polygon", "arcs": [[0, 1, 2, 3, 4, 5, 6, 7, 8,9, 10]]}, {"タイプ": "ポリゴン", "円弧": [[11,12, 13, 14, 15, 16, 17, 18,19, 20, 21, 22]]}, {"type": "多角形", "arcs": [[23, 24, 25, 26, 27, 28,29, 30, 31]]}, {"type": "多角形", "円弧": [[32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44]]}, {"タイプ": "ポリゴン", "円弧": [[45, 46, 47, 48,49, 50, 51, 52, 53, 54, 55, 56]]}, {"タイプ": "ポリゴン", "弧": [[57, 58,59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70]]}

私が使用しているコードは次のようになります

d3.json("assets/test21.json", function(error, uk) {
    console.log(uk);

    var width = 960,
    height = 1160;

    var svg = d3.select("body").append("svg")
    .attr("width", width)
    .attr("height", height);

    d3.json("uk.json", function(error, uk) {svg.append("path")
              .datum(topojson.object(uk, uk.objects.subunits))
              .attr("d", d3.geo.path().projection(d3.geo.mercator()));

オブジェクトは問題なくロードされているようで、コンソール ログで調べることができますが、このエラーが発生します。

NS_ERROR_DOM_BAD_URI: 制限された URI へのアクセスが拒否されました [このエラーでブレーク]

.../apis.google.com/ /abc-static/ /js/gapi/iframes,googleapis_client/rt=j/ver=GyFIW...

後でトランジションを実行できるように、.svg ファイルをロードするのではなく、d3 シェイプ ファイルを使用しています。シェイプ ファイルは、イラストレーター用の MacPublisher プラグインを使用して生成されました。

感謝して受け取った助け

4

0 に答える 0