裁剪掉 13 U.S 区域以外的所有映射区域。状态
Crop out all mapped area beyond region of 13 U.S. states
我刚开始在 R 中进行映射,我已经设法将经纬度数据帧转换为栅格文件,然后在其上绘制州边界。
现在我需要准备好发布它,我想只包括我的 13 个州区域的形状(没有大湖)。
library(tmap)
usa <- st_as_sf(maps::map("state", fill=TRUE, plot =FALSE))
map_us<- tm_shape(usa)+
tm_borders()
tm_shape(raster_file) +
tm_raster(style = "cont", palette = "viridis", midpoint = 0)+
map_us
我很难找到可以为多个州提供多边形的东西,而且我已经使用了很多地图包。抱歉,我不能在此处包含我的栅格数据。
要将光栅文件裁剪为 {sf} 矢量形状,原则上有两种选择:
- 在数据层面裁剪;这涉及
raster::mask()
之后可能 raster::crop()
以减小栅格的范围(蒙版栅格保留原始大小)
- 保留数据,并在绘图上覆盖一个带孔的白色多边形
数据级别的裁剪更多 "pure",但会留下参差不齐的边缘(栅格单元格 必须 是方形的)。
覆盖一个白色多边形不是那么纯粹,但如果您的主要目标是一个光滑的演示文稿(并且该死的纯洁性......)可能更可取
中找到对它们的讨论以及示例和示例代码
我刚开始在 R 中进行映射,我已经设法将经纬度数据帧转换为栅格文件,然后在其上绘制州边界。
现在我需要准备好发布它,我想只包括我的 13 个州区域的形状(没有大湖)。
library(tmap)
usa <- st_as_sf(maps::map("state", fill=TRUE, plot =FALSE))
map_us<- tm_shape(usa)+
tm_borders()
tm_shape(raster_file) +
tm_raster(style = "cont", palette = "viridis", midpoint = 0)+
map_us
我很难找到可以为多个州提供多边形的东西,而且我已经使用了很多地图包。抱歉,我不能在此处包含我的栅格数据。
要将光栅文件裁剪为 {sf} 矢量形状,原则上有两种选择:
- 在数据层面裁剪;这涉及
raster::mask()
之后可能raster::crop()
以减小栅格的范围(蒙版栅格保留原始大小) - 保留数据,并在绘图上覆盖一个带孔的白色多边形
数据级别的裁剪更多 "pure",但会留下参差不齐的边缘(栅格单元格 必须 是方形的)。
覆盖一个白色多边形不是那么纯粹,但如果您的主要目标是一个光滑的演示文稿(并且该死的纯洁性......)可能更可取
中找到对它们的讨论以及示例和示例代码