d3.js - 如何在 d3js 中居中和缩放 map (使用projection.center/translate/rotate?)

标签 d3.js maps visualization map-projections

鉴于我有给定地理特征和特定投影的 topoJSON 数据。

我应该如何居中和缩放 map 以适合其父对象?

看来我可以使用projection.rotate()、projection.translate()或projection.center()来居中 map :

https://github.com/d3/d3-3.x-api-reference/blob/master/Geo-Projections.md

有什么区别以及规模如何影响不同的功能?

最佳答案

使用 projection.fitExtent()在 v4 中。 Documentation . Example .
fitExtent需要两个参数:

  • 范围是投影的左上角和右下角,由两个数组组成的数组表示 - 例如[[0, 0], [width, height]] .
  • object 是一个 GeoJSON 对象。

  • 如果投影的左上角是[0, 0] ,您可以使用便捷方法projection.fitSize() ,您只通过 extent 的右下角,由两个项目的单个数组表示 - 例如[width, height] .

    关于d3.js - 如何在 d3js 中居中和缩放 map (使用projection.center/translate/rotate?),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40265260/

    相关文章:

    javascript - 使用 leaflet.js 更新带有 traffictiles 的 HERE map

    python - 旋转 SQLite 表,像 SQL 一样应该是

    javascript - 选择新源文件时删除 d3 Viz

    javascript - d3.js 热图图例

    javascript - 使用 D3 对两条线之间的区域进行阴影处理

    javascript - D3 : How to assign style css to a specified id

    javascript - Leaflet.js - 使用 slider 将不透明度设置为 LayerGroup

    api - Google Maps : Platform rejected your request.此I [...]网站或无权使用此API key

    python - 使用带有 kind ='reg' 的 seabornpairplot 时出现轴限制问题

    tensorflow - 如何在 TensorBoard 中显示一个张量中多个特征的分布