2

这是使用d3.js在地图上绘制投影矩形的最优雅方式?

此解决方案适用于圈子

   var circ = d3.geo.circle();

    var circle = g.selectAll("path1")
        .data(dataset)

    circle.enter()
      .append("path")
        .attr("class", "point")
        .datum(function(d) {
            return circ
                .origin([d.x, d.y])
                .angle(3)()
        })
        .attr("d", path)

以及“使用 D3 正交的圆形剪辑和投影”中的说明

无论如何,显然没有d3.geo.rect(),我真的无法弄清楚哪个是d3.geo.path()要操作的正确输入。

我们以这组坐标为例:

    var route = {
        type: "LineString",
        coordinates: [
            [0,0],
            [0,60],
            [60,60],
            [60,0],
        ]
    }

    svg.append("path")
        .datum(route)
        .attr("class", "route")
        .attr("d", path);

这导致了这个投影矩形: 在此处输入图像描述

可以看到上面的线是弯曲的,不跟随投影。听起来很协调,因为它遵循测地线(平行线的定义与子午线不同),但是我如何定义一条平行线之后的线呢?

非常感谢您的帮助!

4

0 回答 0