如何在d3.js中缩放GIS数据?

How can one scale GIS data in d3.js?

本文关键字:缩放 GIS 数据 js d3      更新时间:2023-09-26

以此为例,我如何缩放图形,使其放大更多。我之所以问这个问题,是因为我只想可视化德克萨斯州的数据,所以我想改变缩放以使其更大。

是否可以使用内置的d3.js函数进行缩放,或者必须修改JSON数据中的转换值(缩放和/或翻译)?

d3.geo.path()使用d3.geo.albersUsa()投影,除非您定义一个新的。据我所知,d3.geo。albersUsa不提供任何改变中心的选项,尽管你可以改变比例。为此,您需要显式地定义投影并将其应用于geo path,如下所示:

projection = d3.geo.albersUsa().scale(1500);  
path = d3.geo.path().projection(projection);

但是你可以使用d3.geo。albers,它提供了像大多数D3投影一样的center()函数:

projection = d3.geo.albers().scale(2000).center([0,30]);
path = d3.geo.path().projection(projection);

这应该会给你一张以德克萨斯州为中心的阿尔伯斯投影的美国地图。