2016-11-09 67 views
0

我有一个非常小的SpatialLinesDataFrame,我需要与LeafletR单张折线不显示

不幸的是,由于某种原因,我无法这样做。 This是数据(它是12KB)。

我尝试这样做:

library(leaflet) 
load("mylines.Rdata") 
leaflet() %>% addTiles() %>% addPolylines(data=mylines) 

但是生成的地图没有什么意义,我只能看到在屏幕上方一条线,这不是什么应该被绘制。 这是结果: enter image description here

相反,如果我做的:

library(mapview) 
mapview(mylines) 

结果: enter image description here 它完美,尽管使用mapviewleaflet下方。 我在Leaflet语法中做错了什么?

+0

你可以发布一个屏幕截图:“屏幕顶部的行”是什么样的?缩小地图时会发生什么? – IvanSanchez

+0

@IvanSanchez完成后,我添加了两个截图来说明问题。谢谢参观! – AF7

+0

是的,当点的纬度大于〜85.5度时(因为地图投影不是微不足道的),看起来像是一个神器。我无法阅读'.rdata'文件,所以我希望在R方面有更多知识的人可以仔细看看你的文件,并检查你的数据的纬度是否合理。 – IvanSanchez

回答

1

我用来与leaflet提供raster s工作,所以通常使用addRasterImage功能,这需要投射过来leaflet的显示器投影(EPSG:3857)的数据。但是,对于多边形和线条,正如@TimSalabim正确指出的那样,情况并非如此。

因此,这种情况下的解决方案是不预先将数据重投影到leaflet投影,并以经纬度坐标(EPSG:4326)提供。

mapview因为它自动执行此操作而工作。