92得票1回答
为什么tmap比ggplot2渲染快80倍?[在macOS上使用XQuartz/X11图形设备在R中绘制shapefiles,使用ggplot2::geom_sf()]

更新/编辑/Reprex: 使用相同的图形设备渲染相同的空间数据,tmap 只需1秒,而 ggplot2 则需要80秒,尽管 tmap 绘图的 R 对象大小是后者的80倍。这是由于软件包和图形设备之间的内部差异和/或实现方式不同吗? library(ggplot2); library(sf)...

43得票3回答
将几何图形中的纬度/经度写入单独的列并保留ID列

我有一个数据框,其中包含来自shapefile的多边形ID以及它们在几何列中的中心点:# A tibble: 3 x 2 ID geometry <dbl> <POINT [°]> 1 1 (117.2 31.8) 2 2 (11...

42得票2回答
如何解决空间数据连接时出现的球面几何失败问题

我有一个包含多个多边形的shapefile文件和一个带有坐标的数据框。我想将数据框中的每个坐标分配给shapefile中的一个多边形。因此,需要在数据框中添加一列,列名为多边形名称或ID。这是数据的链接library(sf) library(readr) shape <- read_sf...

39得票3回答
如何将由geom_sf生成的地图放在由ggmap生成的栅格图像之上

我尝试了以下代码:library(ggplot2) library(ggmap) library(sf) nc <- st_read(system.file("shape/nc.shp", package = "sf")) str(nc) Classes ‘sf’ and 'data...

27得票3回答
在MultiPolygon中高效提取由自相交特征生成的所有子多边形

从包含相当数量(约20000个)潜在部分重叠多边形的shapefile开始,我需要提取由它们不同"边界"相交而产生的所有子多边形。 实际上,从一些模拟数据开始:library(tibble) library(dplyr) library(sf) ncircles <- 9 rmax ...

27得票1回答
为什么要使用st_intersection而不是st_intersects?

st_intersection比st_intersects慢得多。那么为什么不使用后者而不是前者呢?这里有一个小玩具数据集的示例,但对于我实际的62020个点与实际地理区域边界相交的数据集,执行时间差异巨大。我有24GB的RAM,st_intersects代码只需要几秒钟,而st_inters...

25得票1回答
如何使用sf::st_centroid计算多边形的重心?

我正在使用新的"sf"包在R中处理一些巴西人口普查数据。我可以成功导入数据,但是当我尝试创建原始多边形的质心时出现错误。library(sf) #Donwload data filepath <- 'ftp://geoftp.ibge.gov.br/organizacao_do_t...

24得票2回答
如何将一个数据框转换为简单要素数据框?

我有一个包含地点参考、x和y坐标的表格,使用给定的坐标参考系统。我想将其转换为一个简单的要素数据框。我应该如何创建它呢?我原以为可能是: data_frame(place = "London", lat = 51.5074, lon = 0.1278, ...

24得票3回答
如何使用sf包中的st_join()进行空间连接?

这是一个我一直在苦苦思考的玩具示例 # Make points point1 <- c(.5, .5) point2 <- c(.6, .6) point3 <- c(3, 3) mpt <- st_multipoint(rbind(point1, point2, p...

23得票1回答
无缝拟合两个SF多边形

问题 假设我们有两个形状文件,它们应该无缝连接。但是实际上,它们之间存在缝隙。有没有一种方法可以强制它们彼此粘合而不留下空白? 具体情况 我有两个形状文件:一个是欧洲地区的文件--REG,另一个是邻国的文件--NEI。这两个形状文件都来自欧盟统计局的资料库,并且应该能够拼合在一起...