私は、例のように米国の州地図ではなく、ワールドマップのために働いている境界ボックスIIの例へのd3ズームを取得しようとしています(https://bl.ocks.org/mbostock/raw/9656675/参照)。 。残念ながらズームは不安定です。一部の国では正常に動作します。他の人にとっては、それは太平洋に向かって勢いを変えます。d3:状態の代わりに国の境界ボックスIIにズーム
私はJSFiddle私のコードで私は遠隔地からtopojsonファイルを読み込むことができませんでした。上記の例で編集した関連機能は次のとおりです。
var projection = d3.geo.mercator() // instead of albersUsa
.scale(100)
.translate([width/2, height/2]);
d3.json("world-110m.json", function(error, world) { //world json
if (error) throw error;
g.selectAll("path")
.data(topojson.feature(world, world.objects.countries).features) //traverse world objects instead of state objects
.enter().append("path")
.attr("d", path)
.attr("class", "feature")
.on("click", clicked);
g.append("path")
.datum(topojson.mesh(world, world.objects.countries, function(a, b) { return a !== b; })) // append world objects not states
.attr("class", "mesh")
.attr("d", path);
});
助けてください。
注:一部の州でもズームが不安定であることがわかりました。たとえばVTまたはNHをクリックしてみてください。私はGitHubにバグを報告します。一方、任意のアイデア?
"world-110m.json"のあなたのバージョンから来ることはありますか? 私の世界のjsonバージョンであなたのマップを再作成しました。これはうまくいっているようです。あなたが問題を抱えている特定の国ですか? http://plnkr.co/edit/L4U1fRXq9wre1DrigkLJ?p=preview plunkから世界地図をダウンロードすることができます。 –
あなたはそれを解決できましたか? –
もっと早く更新すべきです。私はGitに関する問題を投稿し、Mike Bostockは数時間以内に修正を出しました:https://github.com/mbostock/d3/issues/2819。私はd3の(少し)古いバージョンを実行していたことがわかります。それと彼は境界線の大きさを変更しました。上のリンクで彼の反応を見てください。 – dylanmac