小编Kat*_*y42的帖子

geom_sf 不使用轴中的几何坐标,但绘制正确的多边形形状?

我的总体目标是将多个形状文件(大河流域内的河流子流域的多边形)组合成一个文件并绘制为地图。这个新的组合文件稍后将与变量数据(例如降雨)组合并按 绘制aes()

我的问题是:
ggplot()+geom_sf()绘制多边形的正确形状,但在轴上没有正确的坐标 - 它不使用轴上几何列中给出的值。

我对错误的想法,但我不知道如何纠正:

  1. 读入的形状文件具有“long”“lat”( crs= 4326) 中的几何形状,但 crs 表示坐标位于 UTM Zone 48N WGS84 ( crs=32648) 中。如果我尝试将 crs 强制为 4326,坐标值会发生变化,就好像转换公式试图纠正它们一样。
  2. geom_sf并且coord_sf正在做一些我不明白的事情!

library(sp)  
library(raster)  
library(ggplot2)  
library(sf)  
library(ggsf)  
library(rgdal)  
library(plyr)   
library(dplyr)    
library(purrr)  

setwd("/Users/.../Sub_Basin_Outlines_withSdata/")  
list.files('/Users/.../Sub_Basin_Outlines_withSdata/', pattern='\\.shp$')
Run Code Online (Sandbox Code Playgroud)

从文件夹中读取各个多边形形状文件。与身份证结合。

bangsai <- st_read("./without_S_data/", "Nam Bang Sai")  
BasinID <- "BGS"  
bangsai <- cbind(bangsai,BasinID)   

ing <- st_read("./without_S_data/", "Nam Ing Outline")  
BasinID <- "ING"  
Run Code Online (Sandbox Code Playgroud)

两个单独的形状文件作为简单特征导入,请参阅 R 代码的图像

将各个子流域多边形形状文件合并为一个具有多个要素的形状文件。

all_sub_basins <- rbind(bangsai,ing)  
Run Code Online (Sandbox Code Playgroud)

图像显示了 中多边形/要素的坐标值all_sub_basins$geometry …

r utm latitude-longitude ggplot2 r-sf

5
推荐指数
0
解决办法
1904
查看次数

标签 统计

ggplot2 ×1

latitude-longitude ×1

r ×1

r-sf ×1

utm ×1