私は、画像を使用している地図上で、tree.csvというcsvファイルの経度と緯度を基に地図上に描画します。 私のcsvファイルには、多くの行が含まれるので、私はちょうどここにいくつかの行を入れて地図のプロット点d3 javascript
経度緯度う。ここ37.8030467266869 122.425063628702 ......
37.7295482207565 122.392689419827
は私のコードです
d3.csv("/trees.csv", function(data) {
dataset=data.map(function(d) { return [+d["Longitude"],+d["Latitude"] ];});
console.log(data)
var width = 750,
height = width;
// Set up projection that map is using
var projection = d3.geo.mercator()
.center([-122.433701, 37.767683])
.scale(225000)
.translate([width/2, height/2]);
var path=d3.geo.path().projection(projection);
var svgContainer=d3.select("body").append("svg")
.attr("width",width)
.attr("height",height);
svgContainer.append("image")
.attr("width", width)
.attr("height", height)
.attr("xlink:href", "/Ilu.svg");
var trees=svgContainer.selectAll("circles")
.data(data).enter()
.append("circles")
var treesAttributes=trees
.attr("cx",function(d) { return projection(d["Longitude"])[0];})
.attr("cy",function(d) { return projection(d["Latitude"])[1];})
.attr("r","100px")
.style("fill","red");
私の地図は見ることができますが、地図上のどの点も見ることができません。私はウェブを調べるとき。私はcxがNan番号であり、cyは同じ番号であることが分かります。私の配列はまだ読まれていないかもしれないと思う。しかし、私は問題については分かりません。私はくっついた。皆さんは私に問題を解決できますか?ありがとう
たぶんサブセット '[0]'と '[1]'を削除しますか? –
@ RyanMortonあなたの答えをありがとう。コーディネーターのcxとcyの番号が写真の番号と異なっていますが、まだ他の行と同じ番号であり、まだマップ上にポイントがありません – dinhvan2804
前のコメントは無視してください。データはどのように見えますか?あなたが投影関数に緯度または経度のどちらかを送るのは奇妙なことです。 cxとcyを適切に評価するために、両方の座標を一緒に投影するべきではありませんか? –