6

我有一个 sfc_POLYGON,IHS使用包作为几个形状的联合获得sf

Geometry set for 1 feature 
geometry type:  POLYGON
dimension:      XY
bbox:           xmin: 270194.7 ymin: 2255850 xmax: 279225 ymax: 2265469
epsg (SRID):    32643
proj4string:    +proj=utm +zone=43 +datum=WGS84 +units=m +no_defs
POLYGON((279224.998943279 2261084.1514869, 2792...

虽然我能够mapviewleaflet. 当我绘制 this isleaflet时,我得到一个不是它的警告sf layer is not long-lat data,并且我得到了基础世界地图。这是我用于绘图的代码leaflet

IHS%>%leaflet()%>%addTiles()%>%
  addProviderTiles(providers$Esri.WorldImagery, group ="ESRI")%>%
  addPolygons()

我怀疑这与CRS有关。我尝试过st_set_crs(IHS, 4326)将我的投影IHS从 utm 更改为 longlat:

Geometry set for 1 feature 
geometry type:  POLYGON
dimension:      XY
bbox:           xmin: 270194.7 ymin: 2255850 xmax: 279225 ymax: 2265469
epsg (SRID):    4326
proj4string:    +proj=longlat +datum=WGS84 +no_defs

但是,传单警告和输出没有变化。我不确定这里,但它与改变尺寸和 bbox (似乎以米为单位)有关吗?

4

1 回答 1

7

“转换”成 Lon/Lat 就是改变它的空间投影。一旦知道这一点,您就可以使用空间数据并在图书馆帮助中找到投影空间特征的正确方法。

在您的情况下, usingst_set_crs(IHS, 4326)仅表示投影是 Lon/lat,而不是投影。您需要使用st_transform

IHS_wgs84 <- st_transform(IHS, "+init=epsg:4326")
于 2017-08-16T12:01:06.737 回答