gpt4 book ai didi

r - 多边形 shapefile 不在传单 R 中呈现

转载 作者:行者123 更新时间:2023-12-04 13:31:55 26 4
gpt4 key购买 nike

我正在尝试使用 R 中的传单包向传单 map 添加一些边界。我在 RStudio 中写道:

library(rgdal)
fw<-readOGR("/local/path/to/FWC_UT_MASTER_0623_2016.shp",verbose=FALSE)`

为了将多边形添加到传单中,我写道:

library(leaflet)
fw %>%
leaflet() %>%
addTiles() %>%
addPolygons(stroke = FALSE, fillOpacity = 0.5, smoothFactor = 0.5)

看起来很直观。我想不通为什么这些小家伙不渲染。我认为 SpatialPolygonsDataFrame 需要在 WGS84 中。原始文件不是。

..@ proj4string:Formal class 'CRS' [package "sp"] with 1 slot
.. .. ..@ projargs: chr "+proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +no_defs"

所以我尝试重新投影原始 shapefile

fw.proj<-spTransform(fw, CRS("+init=epsg:4326"))

但是,

fw.proj %>%
leaflet() %>%
addTiles() %>%
addPolygons(stroke = FALSE, fillOpacity = 0.5, smoothFactor = 0.5)

也呈现空白 map 。我在这里保存了原始形状文件: https://github.com/uky994/firewise

如有任何帮助,我们将不胜感激。

最佳答案

我很惊讶你的 readOGR 没有发出任何警告,因为 layer 参数是必需的。

但是你是对的,你需要将形状转换为纬度/经度,因为这是传单所期望的。

这是一些工作代码;您必须确定要使用的确切 CRS

library(leaflet)
library(rgdal)

setwd("~/Downloads/firewise-master/")
fw <- readOGR(dsn = ".",
layer = "FWC_UT_MASTER_0623_2016",
verbose = FALSE)

fw_latlon <- spTransform(fw, CRS("+proj=longlat +datum=WGS84"))

leaflet() %>%
addTiles() %>%
addPolygons(data = fw_latlon)

enter image description here

关于r - 多边形 shapefile 不在传单 R 中呈现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42182879/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com