Javascript d3.js映射行中断
我正在开发一个d3.js地图。我在几个国家绘制了点,并用圆弧连接这些点。问题是某些弧被中断Javascript d3.js映射行中断,javascript,d3.js,Javascript,D3.js,我正在开发一个d3.js地图。我在几个国家绘制了点,并用圆弧连接这些点。问题是某些弧被中断 gArcs.append(“路径”) .基准({ 键入:“LineString”, 坐标:[ [data.dataArray[i].long\u-from,data.dataArray[i].lat\u-from], [data.dataArray[i].长\u到,data.dataArray[i].宽\u到] ] }) .attr(“类”、“弧”) .attr(“d”,路径) .风格({ “笔划”:
gArcs.append(“路径”)
.基准({
键入:“LineString”,
坐标:[
[data.dataArray[i].long\u-from,data.dataArray[i].lat\u-from],
[data.dataArray[i].长\u到,data.dataArray[i].宽\u到]
]
})
.attr(“类”、“弧”)
.attr(“d”,路径)
.风格({
“笔划”:线条颜色,
“笔划宽度”:线宽,
})
最后,我选择了在地图上用投影点绘制直线的解决方案,以避免中断圆弧
features.selectAll("path")
.data(data.dataArray)
.enter().append("line")
.filter(function(d) {
return d.country_name_from == countryNameFrom
})
.attr("x1", function (d) {
return projection([d.long_from,d.lat_from])[0];
})
.attr("y1", function (d) {
return projection([d.long_from,d.lat_from])[1];
})
.attr("x2", function (d) {
return projection([d.long_to,d.lat_to])[0];
})
.attr("y2", function (d) {
return projection([d.long_to,d.lat_to])[1];
})
.attr("d", path)
.style({
'stroke': lineColor,
'stroke-width':lineWidth,
})
我没有看到任何中断的弧。图中描绘的一条弧线是在地图上投影的连接堪萨斯城和艾丽斯·斯普林斯的弧线。它只是在你选择的范围内被剪裁。那么,你的问题是什么?嗨,高积云,我只是不想用最短的路径,在我的地图上有一个连续的弧线,在我的例子中的非洲。thxHave a look and Thank,Thank a look and Thank,Thank,Thank,Thank,Thank,Thank,Thank,Thank,Thank,Thank,Thank,Thank,Thank,Thank,Thank,Thank,Thank,Thank,Thank,Thank,Thank,Thank,Thank,Thank,Thank,Thank,Thank,Thank,Thank,Than。但是如果可能的话,我想保持弧和不直,然后用一条路径在两点之间画一条弧。有很多方法可以做到这一点。只需避免路径生成器,它将投影大圆,冒着一些不必要的剪裁风险。