使用以下代码将多年份的每月温度数据的栅格文件读入,文件名可通过以下格式访问
使用以下代码将其读入并写入到NetCDF中:
当我将数据写入NetCDF并绘制月度数据时,它按照从第1个月到第24个月的顺序进行组织,但我希望它显示为“1981年1月”,“1981年2月”等。
我认为在writeRaster中添加zunit参数会起作用,但实际上并没有,数字仍然是1-24,而不是Jan,Feb等。
names(object)
:'Jan.1981','Feb.1981'等(适用于下面代码的两个年份示例文件 here - 添加所有文件会使其过大。使用以下代码将其读入并写入到NetCDF中:
#Load Packages
library(raster)
library(ncdf4)
#Read in temperature files
r1 <- brick('TavgM_1981.grd')
r2 <- brick('TavgM_1982.grd')
#stack them together
TempStack = stack(r1, r2)
#set the coordinate system (as it was missing)
crs(TempStack) <- ('+proj=lcc +lat_1=53.5 +lat_2=53.5 +lat_0=46.834 +lon_0=5 +x_0=1488375 +y_0=-203375 +datum=WGS84 +to_meter=2500 +no_defs +ellps=WGS84 +towgs84=0,0,0')
#reproject to get in lat/lon instead of meters
TempStack<-projectRaster(TempStack, crs=CRS("+init=epsg:4326"))
#Extract monthly data names to assign to netCDf later
names <- names(TempStack)
#write the raster file to NetCDF
writeRaster(TempStack, "Temp.nc", overwrite=TRUE, format="CDF", varname="Temperature", varunit="degC",
longname="Temperature -- raster stack to netCDF, monthly average", xname="Longitude", yname="Latitude", zname='Time', zunit=names)
当我将数据写入NetCDF并绘制月度数据时,它按照从第1个月到第24个月的顺序进行组织,但我希望它显示为“1981年1月”,“1981年2月”等。
我认为在writeRaster中添加zunit参数会起作用,但实际上并没有,数字仍然是1-24,而不是Jan,Feb等。