Hi all, The Scilab (SOD) format is the way forward since netCDF and HDF5 are very similar, but have slightly different naming conventions. I have a Geographic grid with the structure below, but cannot seem to get the output file dimensions right, i.e. the x and y coordinates in degrees and not pixel reference.
File structure from ncdisp('filename') Source: Test_10-FAA.grd Format: netcdf4 Global Attributes: Conventions = "COARDS, CF-1.5" title = "" history = "grdsample -R-10/10/-10/10 -I1m @GMTAPI@-000001 -Gc:\Temp\Test_10-FAA.grd -fg --GMT_HISTORY=false" description = "" GMT_version = "5.4.3 (r19528) [64-bit] [MP]" node_offset = 1 Dimensions: lon = 1200 lat = 1200 Variables: lon Size: 1200 Dimensions: lon Datatype: double Attributes: long_name = "longitude" units = "degrees_east" actual_range = -10 10 lat Size: 1200 Dimensions: lat Datatype: double Attributes: long_name = "latitude" units = "degrees_north" actual_range = -10 10 z Size: 1200x1200 Dimensions: lon,lat Datatype: single Attributes: long_name = "z" _FillValue = NaN actual_range = -104.9617 456.6511 b=h5open('Test_out.grd','w'); h5write(b,'lat',lat); h5write(b,'lon',lon); h5write(b,'data',data); h5close(b) save('Test_output.sod','lon','lat','data') Saving the output creates a file composed of the three datasets (lon, lat, data). Plotting the data in Scilab via Sgrayplot(x,y,z) it looks correct, oriented properly and axes of longitude and latitude. Anyone know how to set the correct attributes to get the HDF5 file recognised as Geographic? Lester On Wed, 25 May 2022 at 15:17, Lester Anderson <arctica1...@gmail.com> wrote: > Hi all, > > I just found a useful way of getting netCDF files into Scilab via HDF5 > (just found this!): > > a=h5open('Test_10-FAA.grd'); > h5ls(a) > // "lat" "dataset" // "lon" > "dataset" // "z" "dataset" // "Conventions" > "attribute"// "GMT_version" "attribute"// "_NCProperties" > "attribute"// "description" "attribute"// "history" > "attribute"// "node_offset" "attribute"// "title" > "attribute" > lon=h5read(a, 'lon');lat=h5read(a, 'lat');data=h5read(a, 'z'); > > h5close(a); > > The data plots fine via Sgrayplot(lon,lat,data,zminmax=[-25,25]) . I need > to know how to write data out to essentially replicate the input netCDF > file, so any pointers/examples would be helpful. It would be good to output > a file in a format that GMT (Generic Mapping Tools) would recognise. > > The use of HDF5 seems to solve the issues of working with netCDF-4 files. > > Lester >
_______________________________________________ users mailing list users@lists.scilab.org http://lists.scilab.org/mailman/listinfo/users