![](/img/trans.png)
[英]Extracting subset from netCDF file using lat/lon and converting into .csv in R
[英]Plot subset of netcdf in R using lat/lon boundaries
我在R中有一個netcdf文件,其中包含14個變量,我想使用它們分別使用緯度和經度邊界進行子集化,即提取特定海洋區域的某些變量。 到目前為止,我一直在嘗試南太平洋地區(在-150W和-90W之間以及在-60S和0S之間)。
文件詳細信息如下(下面的代碼僅顯示第一個變量“ bio1”的詳細信息):
"File oceandata.nc (NC_FORMAT_CLASSIC):"
14 variables (excluding dimension variables):"
float bio1[lon,lat] "
standard_name: air_temperature"
long_name: bio1: Annual Mean Temp"
units: C"
_FillValue: 1.00000001504747e+30"
valid_max: 307.259399414062"
valid_min: 226.706176757812"
我使用了以下代碼:
require(ncdf4)
oceana = nc_open( "oceandata.nc" )
LatIdx = which ( oceana$dim$lat$vals < 0 & oceana$dim$lat$vals < -60)
LonIdx = which ( oceana$dim$lon$vals > -150 & oceana$dim$lon$vals < -90)
myvariable <- ncvar_get( oceana, "bio1")[ LonIdx, LatIdx]
lon <- ncvar_get(oceana, "lon")
lat <- ncvar_get(oceana, "lat")
但是,當我嘗試使用以下方式進行繪制時:
image(lon,lat, myvariable)
我收到以下錯誤:
Error in image.default(lon, lat, myvariable) :
預期增加“ x”和“ y”值
對於在這里我要去哪里出錯的任何評論/建議,將不勝感激!
image
要求x
和y
參數具有遞增的值。 我懷疑你的lat
和lon
值下降(即-90W到-150W)。 如果是這樣,請考慮切換順序。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.