質問

メキシコ市町村のシェープファイルをTopojsonに変換し、このチュートリアル="http://bost.ocks.org/mike/map/#converting-data-data-data-data-data-Data"> http://bost.ocks.org/mike/map/#converting-data 。私はそれを変換することができましたが、私はそれを表示することができません。あらゆる助けが大いに感謝されます。

これまでの私のワークフローです:

1)ShapeFile

をダウンロードして解凍する
wget http://mapserver.inegi.org.mx/MGN/mgm2010v5_0a.zip 
unzip mgm2010v5_0a.zip 
.

2)JSONへの変換、LAT-LONDおよびSUBSETをサブセット化してSHAPEFILE

ogr2ogr  -f GeoJSON -t_srs EPSG:4326 -where "CVE_ENT IN ('09')" df.json Municipios_2010_5A.shp
.

3)Topojson

への変換
topojson --id-property OID -p name=OID -p name -o df2.json df.json 
.

4)およびHTMLコードの作成

<!DOCTYPE html>
<meta charset="utf-8">
<style>

/* CSS goes here. */

</style>
<body>
<script src="http://d3js.org/d3.v3.min.js"></script>
<script src="http://d3js.org/topojson.v1.min.js"></script>
<script>

var width = 960,
height = 1160;

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

 d3.json("df2.json", function(error, df2) {
 svg.append("path")
  .datum(topojson.feature(df2, df2.objects.df))
  .attr("d", d3.geo.path().projection(d3.geo.mercator()));
 });

 </script>
.

HTMLを実行すると、空白のページが表示されます。私が間違っているかもしれないものについてのアイデアはどんなアイデアですか?

役に立ちましたか?

解決

最も簡単なオプションは、予測については特別ではない場合は、ShapeFile(Lambert Conformal Conic)によって提供される投影を使用することです。 topojson 's - widthと--heightコマンドラインフラグ投影シェイプファイルを妥当なサイズに再スケールする。たとえば、960pxの幅が必要な場合は、次のことができます。

topojson --width=960 --margin 20 --simplify=.1 -o mx.json -- municipalities.shp
.

(これはまたスクリーン座標、便利に単純化する。)

メイクファイルを備えた完全な例は bl.ocks.org/9265467

「メキシコ」

他方では、独自の投影を指定したい場合は、OGR2OGRを使用して投影を元に戻してからブラウザに投影を定義します。しかしその場合は、投影パラメータを適切に指定することをお勧めします。たとえば、ブラウザで同じ投影を再作成するには、次のことができます。

var projection = d3.geo.conicConformal()
    .rotate([102, 0])
    .center([0, 24])
    .parallels([17.5, 29.5])
    .scale(1850)
    .translate([width / 2, height / 2]);
.

(あなたの希望のビューポートに合うように中心とスケールを使っています。)この代替的なアプローチは、 bl.ocks.org/9265674

「メキシコ2」

私は一般的に座標座標(上記の最初のアプローチ)を使用することを好みます。一方、投影を動的に変更したい場合は、そのような複雑なシェープファイルとは確かにありそうもない - ブラウザに投影する方法は行く方法です。パラメータを変更してリロードする方が簡単なので、ブラウザでの投影は開発中に素敵です。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top