1

以下代码片段将 d3.geo.circle() 对象添加为 svg 元素中的路径元素。代码是:

    var g = svg.append("g");
    var circles = g.selectAll("path.circle");
    var circle = d3.geo.circle();
    circles = circles.data(d3.values(data));
    circles
        .enter()
        .append("path");
        .datum(function(d) {
            return circle
                .origin([d.lon, d.lat])
                .angle(0.2)();
        })
        .attr("class", "circle")
        .attr("d", path);

现在,我想在这些圆圈上添加一个 mouseOver 事件,它将记录(打印)经纬度信息,我无法访问:

     g.selectAll('path.circle')
     .on("mouseover", function(d,i) { 
         console.log(d.lat + "-" + d.lon);
     });

我知道“d”代表 d3.geo.circle 对象,但我不知道如何访问数据 [i]?

4

0 回答 0