自定义地图与Highmaps使用proj4js在纬度和经度中添加mappoint系列

时间:2016-09-27 22:39:10

标签: javascript highcharts gis highmaps proj4js

我正在尝试使用Highmaps创建地图。 数据来自GeoJson格式的两个数据源,一个用于国家边界,另一个用于显示一些城市。

边界完美显示,但是当我使用纬度和经度添加点(城市)时会出现问题。

由于Highmaps使用自定义投影,因此所有点都放在错误的位置或根本不显示。 按照这里的文档:http://www.highcharts.com/docs/maps/latlon我试图在边界的geojson中添加hc-transform,但我没有运气。

任何人都知道如何在crs中编写proj4字符串格式以便在highmaps上工作?

当我一个接一个地展示所有国家时,我想知道我是否必须为每个国家配置一个定制的crs(我的意思是它是按国家/地区不同的国家,或者对于整个世界投影来说都是相同的?)

我使用WGS84作为协调系统

1 个答案:

答案 0 :(得分:1)

我还没有用highchart开发任何东西。从他们的网站我认为它使用proj4来处理投影。所以这里有一些例子:

  var wgs84= "+proj=longlat +ellps=WGS84 +datum=WGS84 +no_defs";

不确定为什么要为每个国家/地区进行成本调整。所以我假设你要进行一些空间分析。在这种情况下,即使您只想计算面积或距离,UTM也会更好。

var utm = "+proj=utm +ellps=GRS80 +datum=nad83 +units=m +zone="+ getUTMZone(lon).toString(); 

我的示例是在NAD83中,根据您对您感兴趣的国家/地区的需求进行修改。

确保您的底图和数据点位于同一投影坐标系中,以避免错误定位。