위도/경도 경계로 정의 된 사용자 지정 (비 직사각형) 도메인의 각 표 셀에서 데이터를 추출하려고합니다. 제 입력 파일이 곡선 그리드에 있습니다. 나는 python, cdo, ncks와 같은 다양한 메소드를 시도했지만 여전히 이해할 수는 없다. 난 단지 입력 된 ncfile의 폴리곤 도메인 하위 집합에있는 각 그리드 셀에 대해 시간이 걸리는 정보를 원한다. 정보 ncfile 내 입력은 여기에 주어집니다 :도메인 ncfile에서 데이터 추출
$ ncdump -h 1979_sfc_out.nc
netcdf \1979_sfc_out {
dimensions:
x = 83 ;
y = 94 ;
time = UNLIMITED ; // (8736 currently)
nv4 = 4 ;
variables:
float time(time) ;
time:axis = "T" ;
time:long_name = "time" ;
time:standard_name = "time" ;
time:units = "hours since 1979-1-2 00:00:00" ;
time:calendar = "standard" ;
float x(x) ;
x:axis = "x" ;
x:long_name = "X-coordinate in Cartesian system" ;
x:standard_name = "projection_x_coordinate" ;
x:units = "meters" ;
float y(y) ;
y:axis = "y" ;
y:long_name = "Y-coordinate in Cartesian system" ;
y:standard_name = "projection_y_coordinate" ;
y:units = "meters" ;
float lon(y, x) ;
lon:units = "degrees_east" ;
lon:valid_range = -180., 180. ;
lon:standard_name = "longitude" ;
lon:bounds = "lon_bnds" ;
float lat(y, x) ;
lat:units = "degrees_north" ;
lat:valid_range = -90., 90. ;
lat:standard_name = "latitude" ;
lat:bounds = "lat_bnds" ;
float lon_bnds(y, x, nv4) ;
lon_bnds:units = "degreesE" ;
float lat_bnds(y, x, nv4) ;
lat_bnds:units = "degreesN" ;
char mapping ;
mapping:false_easting = 0. ;
mapping:false_northing = 0. ;
mapping:grid_mapping_name = "polar_stereographic" ;
mapping:latitude_of_projection_origin = 90. ;
mapping:standard_parallel = 64. ;
mapping:straight_vertical_longitude_from_pole = -152. ;
mapping:semi_major_axis = 6370000. ;
mapping:semi_minor_axis = 6370000. ;
float SEAICE(time, y, x) ;
SEAICE:_FillValue = -9999.f ;
SEAICE:units = "fraction" ;
SEAICE:long_name = "Ice concentration (ice=1;no ice=0)" ;
SEAICE:grid_mapping = "mapping" ;
SEAICE:coordinates = "lon lat" ;
내가 시도 것들 중 일부는 내가 생각
lat1=71.2
lat2=72.9
lon1=-176.5
lon2=-160
cdo sellonlatbox,lon1,lon2,lat1,lat2 $ifile $box1_ofile
cdo sellonlatbox (Abort): Float parameter >lon1< contains invalid character at position 1!
입니다 문제는 내 입력 파일이 미터의 X, Y 치수 (하지 않는이있다 음수 기호가 있고 '위치 1의 유효하지 않은 문자'일 가능성이 있음), 위도/경도를도 (degree)로 추출하도록 cdo에 요청합니다. 나는 변수를 '매핑'내 ncfile에서 위도/경도로 미터를 변환하는 데 도움이 될 수도 있지만 그것을 할 방법을 알아낼 수 없습니다.
ncks가 여기서는 적합하지 않습니다. < -> lon/lat 문제입니다. cdo로보고 있습니다. 나는 추출 된 다각형을 원하지만
ncks -v SEAICE,U10,V10 -d latitude,71.2,72.9 -d longitude,-176.5,-160. $ifile -O $box1_ofile
ncks: ERROR dimension latitude is not in input file
, 나는 시도 이러한 예는 내가 여러 사각형 부분 집합 내 최종 다각형 모양을 달성하기 위해 할 수있는 다각형을 얻을 생각 만 사각형 부분 집합,하지만 더 나은가있는 경우 이 조언을 해주는 방법은 높이 평가됩니다.
감사