D3.js 基于随机点和随机角度获取geosjon标注栏

D3.js 基于随机点和随机角度获取geosjon标注栏,d3.js,maps,geojson,D3.js,Maps,Geojson,我试着在d3中做一些,我想这会很容易,因为我记得看到了(顶部的第二个),但看起来它实际上更复杂 Jason举的竖直乐队的例子非常直截了当: let band = [2, -2].map((d, i) => { let stripe = d3.range(-180, 180).map((x) => [x, d]) stripe.push(stripe[0]) return i ? stripe.reverse() : stripe }) 我先做一个垂直带,像这

我试着在d3中做一些,我想这会很容易,因为我记得看到了(顶部的第二个),但看起来它实际上更复杂

Jason举的竖直乐队的例子非常直截了当:

let band = [2, -2].map((d, i) => {
    let stripe = d3.range(-180, 180).map((x) => [x, d])
    stripe.push(stripe[0])
    return i ? stripe.reverse() : stripe
})
我先做一个垂直带,像这样:

let band = [2, -2].map((d, i) => {
    let stripe = d3.range(-90, 90).map((y) => [d, y])
    stripe.push(stripe[0])
    return i ? stripe.reverse() : stripe
})
但是,相反,我得到了一个奇怪的形状,它在每根杆子上都闭合(应该是填充的,而不是抚摸的):

我的最终目标是简单地指定一个点、一个角度和一个宽度(在我的示例中为4),它将返回绘制环绕地球的条带所需的坐标


谢谢。

因为d3,所以这是一个相当简单的问题。 我使用了
d3.geo.circle
,角度为90°(默认值)和一个随机点,因此:

let circle = d3.geo.circle()
    .origin(coords)()
由于
d3.geo.circle
返回一个多边形,我需要编辑它的属性:

circle.type = 'LineString'
circle.coordinates = circle.coordinates[0]
以下是最终结果:


由于d3,这是一个相当简单的问题。 我使用了
d3.geo.circle
,角度为90°(默认值)和一个随机点,因此:

let circle = d3.geo.circle()
    .origin(coords)()
由于
d3.geo.circle
返回一个多边形,我需要编辑它的属性:

circle.type = 'LineString'
circle.coordinates = circle.coordinates[0]
以下是最终结果: