1

d3.js を使用して簡単なカートグラムを作成していますが、元のマップを描画する際にエラーが発生します。ここに例の要点を書きました。次のような機能を作成しようとすると、エラーが発生します。

geometries = topology.objects.mex_estados.geometries;
var features = carto.features(topology, geometries)

topology は d3.json 呼び出しによって返されるオブジェクトであり、carto.features への呼び出しによってトリガーされる "Uncaught TypeError: topojson.object is not a function" というエラーが表示されます。

変数 carto は通常の方法で定義されます。

var proj =  d3.geo.mercator()
.center([-97.16, 21.411])
.scale(1000);

var carto = d3.cartogram()
  .projection(proj)
  .properties(function (d) {
    //regresa también las propiedades (valores) de la fuente de dato
    return d.properties;
});

ここで立ち往生しています。以前に d3 でカートグラムを作成したことがありますが、ここで明らかな何かが欠けているに違いありません。

4

1 に答える 1

0

http://prag.ma/code/d3-cartogram/cartogram.jsでホストされているバージョンを使用する代わりに、間違ったバージョンの cartogram.js を使用していたことがわかりました。Gist をGitHubでホストされているライブラリ バージョンで更新しました。そしてすべてがうまくいきました!

于 2015-09-29T15:54:47.597 に答える