繁体   English   中英

将 R 中 netCDF 栅格数据的地理坐标系设置为 WGS84

[英]Set Geographic Coordinate System to WGS84 for netCDF Raster Data in R

我有一个包含水深测量数据的 netCDF 文件,我试图将其与 WGS84 中的 shapefile 结合在同一个 plot 上。 当我 plot 的 netCDF 数据没有任何坐标系时,我如何为 netCDF 数据设置坐标系,以便我可以将 plot 我所有的空间文件放在同一个 Z32FA6E1B78A9D40289CZ53E?

library(ncdf4) 
library(raster) 
library(rgdal) 
library(ggplot2)

# READ IN AND PARSE BATHYMETRY DATA
# from https://www.ngdc.noaa.gov/thredds/catalog/regional/catalog.htmldataset=regionalDatasetScan
#/albemarle_sound_s010_30m.nc

nc_data <- nc_open('albemarle_sound_s010_30m.nc')

# Get Data from netCDF File
x_coord <- ncvar_get(nc_data, "x")
y_coord <- ncvar_get(nc_data, "y")
Band1 <- ncvar_get(nc_data, "Band1")

# Close connection
nc_close('albemarle_sound_s010_30m.nc')

# Melt data into dataframe for plotting in ggplot2
Band1_df = melt(Band1)

# Plot Data
ggplot() + 
  geom_raster(aes(x = X1, y = X2, fill = value), data = Band1_df) +
  scale_fill_continuous(na.value = "transparent") +
  ylab("") +
  xlab("") +
  theme(panel.grid.major = element_line(color = gray(.5), linetype = "dashed", size = 0.7),
    panel.background = element_rect(fill = "black"),
    plot.title = element_text(color = "black", size = 16, hjust = 0.5))

您提供的 URL 无效。 但我认为这是您正在使用的文件

furl <- "https://www.ngdc.noaa.gov/thredds/fileServer/regional/albemarle_sound_s010_30m.nc"
f = basename(furl)
download.file(furl, f, mode="wb")

使用 ncdf 文件,您可以做到

library(terra)
x <- rast(f)
x
#class       : SpatRaster 
#dimensions  : 3536, 4013, 1  (nrow, ncol, nlyr)
#resolution  : 30, 30  (x, y)
#extent      : 325249.1, 445639.1, 3945457, 4051537  (xmin, xmax, ymin, ymax)
#coord. ref. : NAD83 / UTM zone 18N (EPSG:26918) 
#source      : albemarle_sound_s010_30m.nc 
#varname     : Band1 (GDAL Band Number 1) 
#name        : Band1 
 
plot(x)

在此处输入图像描述

现在您可以使用lines()points()添加空间矢量数据(“shapefile”)。 或使用 ggplot 代替。

正如您在上面看到的,栅格数据具有“UTM 区域 18N”坐标参考系统 (CRS)。 你说你想使用经度/纬度(我假设这就是你对 WGS84 的意思)。 您可以这样做,但将矢量数据转换为栅格数据的坐标参考系统更有意义。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM