【发布时间】:2013-10-15 03:58:17
【问题描述】:
我想在 Albers USA 投影中使用 D3 + Leaflet。
我使用 Mike Bostock 的 D3 + Leaflet 演示作为起点(可在此处找到:http://bost.ocks.org/mike/leaflet/)。我不确定如何正确使用 Albers USA 投影。在试图弄清楚如何做到这一点时,我遇到了几个问题:
- 我不确定如何让 Leaflet 使用 Albers USA 投影。我想我可能可以使用 Proj4Leaflet 插件来做到这一点,但是在创建指定 Albers USA 的 CRS 时,我一直找不到需要传递给它的参数。我在 spatialreference.org 上找到了一些潜在的配置字符串,但我不知道为原点或分辨率指定什么,也没有找到任何解释它的内容。
- D3 的 Albers USA 投影对于集合中的某些点和边界返回 null。我正在使用 Mike Bostock 使用的 us-states.json 文件。我在这里找到了解释:https://github.com/mbostock/d3/issues/1287。 “[...]它现在将为复合投影的剪辑范围之外的点返回 null,因为在使用投影流时不会显示这些点”。我不确定如何从这里开始。我应该使用不同的数据集吗?
如果有人对如何进行操作有任何建议,我将不胜感激!
【问题讨论】:
-
您有使用 AlbersUSA 的具体原因吗?如果它与另一个投影一起使用,使用起来会容易得多。
-
是的,我需要让阿拉斯加和夏威夷更靠近美国大陆。你知道另一种方法吗?我还需要能够在其中放置标记,而不仅仅是显示它们。
-
AFAIK Leaflet 没有 albersUSA 投影,所以我认为您无法进行这种特定组合。
标签: javascript d3.js leaflet