d3.js中地图上的直线
Straight lines on map in d3.js
我正在试用d3.js,我有一张世界地图,上面有代表不同城市的点。我想用LineString和d3.geo.path()在城市之间画直线。由于某些原因,有些线不能直接到达目的地,正如你在下面的方块中看到的那样,从欧洲到太平洋岛屿之一的线形成了一个弧形。
http://bl.ocks.org/whatsthebeef/6360703
问题似乎发生在线路偏离地图一侧而偏离地图另一侧的地方。我解释了文件的一部分,说这条线是顺时针画的,所以我试着切换点的顺序,但它保持不变。
我正在寻找更像这个的东西
http://mbostock.github.io/d3/talk/20111116/airports.html
在这个例子中,我可以看到mbostock正在使用greatArc,但它在文档中也说这是不必要的,而且无论如何都没有关于big-arc的文档,因为它似乎已经被弃用了。
有什么办法防止这种电弧吗?
要画一条直线,请使用:
d3.svg.line()
你必须使用的任何投影来转换你的坐标
var trcoords_o = projection(r.coordinates[0]);
var trcoords_d = projection(r.coordinates[1]);
这似乎也不允许你画一条离开地图一侧进入另一侧的线。
相关文章:
- 谷歌地图JS API+JSON-多个标记没有显示
- 谷歌地图 JS APIV3.
- 谷歌地图JS API-如何使用fitBounds响应地图
- 如何在本地而非CDN中包含谷歌地图JS库
- 用谷歌地图js api v3制作路线动画
- 谷歌地图JS只是显示了一个灰色框
- 谷歌地图 JS API v3 - 简单的多重标记 v2
- HERE 地图 (JS v3) - 将事件侦听器添加到信息气泡
- 谷歌地图 JS API v3:使用 containsLocation() 获取圆圈标记不起作用 - 为什么
- 带有 d3 的嵌入式 Google 地图.js叠加层显示 UI 选项和叠加元素,但不是地图本身
- 使用 QGIS 和 D3 可视化自定义地图.js会受到投影的损害
- 无法加载高图.js和高图.js(地图.js不起作用)
- 谷歌地图js不显示在chrome或opera中
- 在谷歌地图 JS API 上获取两个点之间的点的纬度和经度(按百分比)
- 地图不显示与谷歌地图 js API 一起
- 地理位置地图 JS.
- 错误“包含”未定义在谷歌地图 JS API 中
- 谷歌地图JS v3 MysqlWhile循环
- 谷歌地图JS API V3 addMarker-标记在源代码中回声,没有地图
- Richmarker获取事件.点击谷歌地图js-apiv3