Hi Ahmed, I can confirm that on my system I get the same result as you.
Does your workflow confine you to using NetCDF? I can successfully write/read to the native raster format. r2 <- writeRaster(r, filename = "r001.grd", overwrite=TRUE) r2 #class : RasterLayer #dimensions : 1328, 1264, 1678592 (nrow, ncol, ncell) #resolution : 6250, 6250 (x, y) #extent : -3950000, 3950000, -3950000, 4350000 (xmin, xmax, ymin, ymax) #coord. ref. : +proj=stere +lat_0=-90 +lat_ts=-70 +lon_0=0 +k=1 +x_0=0 +y_0=0 +a=6378273 +b=6356889.449 +units=m +no_defs #data source : /home/btupper/r001.grd #names : layer #values : 0, 100 (min, max) r3 <- raster("r001.grd") r3 #class : RasterLayer #dimensions : 1328, 1264, 1678592 (nrow, ncol, ncell) #resolution : 6250, 6250 (x, y) #extent : -3950000, 3950000, -3950000, 4350000 (xmin, xmax, ymin, ymax) #coord. ref. : +proj=stere +lat_0=-90 +lat_ts=-70 +lon_0=0 +k=1 +x_0=0 +y_0=0 +a=6378273 +b=6356889.449 +units=m +no_defs #data source : /home/btupper/r001.grd #names : layer #values : 0, 100 (min, max) Ben > sessionInfo() R version 3.5.1 (2018-07-02) Platform: x86_64-redhat-linux-gnu (64-bit) Running under: CentOS Linux 7 (Core) Matrix products: default BLAS/LAPACK: /usr/lib64/R/lib/libRblas.so locale: [1] LC_CTYPE=en_US.UTF-8 LC_NUMERIC=C [3] LC_TIME=en_US.UTF-8 LC_COLLATE=en_US.UTF-8 [5] LC_MONETARY=en_US.UTF-8 LC_MESSAGES=en_US.UTF-8 [7] LC_PAPER=en_US.UTF-8 LC_NAME=C [9] LC_ADDRESS=C LC_TELEPHONE=C [11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C attached base packages: [1] stats graphics grDevices utils datasets methods base other attached packages: [1] raster_2.8-19 sp_1.3-1 ncdf4_1.16 loaded via a namespace (and not attached): [1] compiler_3.5.1 rgdal_1.3-6 Rcpp_1.0.0 codetools_0.2-15 [5] grid_3.5.1 lattice_0.20-35 > On Feb 12, 2019, at 9:19 AM, Ahmed El-Gabbas <elgab...@gmail.com> wrote: > > Thanks Ben for your suggestion. > > Adding *prj = TRUE *argument caused this error: > Error in ncdf4::ncvar_def(varname, varunit, list(xdim, ydim), > NAvalue(x), : > unused argument (prj = T) > > Ahmed > > On Tue, Feb 12, 2019 at 3:13 PM Ben Tupper <btup...@bigelow.org> wrote: > >> Hi, >> >> Have you tried using the 'prj' argument to writeRaster? I don't know that >> it will be the solution, but according to ... >> >> >> https://www.rdocumentation.org/packages/raster/versions/2.8-19/topics/writeRaster >> >> It is documented among the '...' arguments. Setting prj = TRUE will cause >> the crs to be written to the file. >> >> Cheers, >> Ben >> >> On Feb 12, 2019, at 8:34 AM, Ahmed El-Gabbas <elgab...@gmail.com> wrote: >> >> Hello all, >> >> I am having a problem while converting a raster object as NetCDF (.nc) >> file, with keeping the CRS information in the output file. >> Here is a reproducible code: >> >> require(raster) >> require(ncdf4) >> CurrTemp <- tempfile() >> download.file(url = >> "https://seaice.uni-bremen.de/data/amsre/asi_daygrid_swath/s6250/2003/feb/Antarctic/asi-s6250-20030214-v5.hdf", >> destfile = CurrTemp, mode = "wb", quiet = T) >> r <- raster(CurrTemp) >> r <- flip(r,2) >> extent(r) <- c(-3950000, 3950000, -3950000, 4350000) >> crs(r) <- "+proj=stere +lat_0=-90 +lat_ts=-70 +lon_0=0 +k=1 +x_0=0 +y_0=0 >> +a=6378273 +b=6356889.449 +units=m +no_defs" >> r# class : RasterLayer # dimensions : 1328, 1264, 1678592 (nrow, >> ncol, ncell)# resolution : 6250, 6250 (x, y)# extent : -3950000, >> 3950000, -3950000, 4350000 (xmin, xmax, ymin, ymax)# coord. ref. : >> +proj=stere +lat_0=-90 +lat_ts=-70 +lon_0=0 +k=1 +x_0=0 +y_0=0 +a=6378273 >> +b=6356889.449 +units=m +no_defs # data source : in memory# names : >> layer # values : 0, 100 (min, max) >> >> So far the raster object reads well, with CRS information included. >> However, when I try to save it as .nc file, R prints "coord. ref. : NA", >> and the produced file does not contain the CRS information. >> >> writeRaster(r, filename = "O:/Ahmed/r001.nc", varname="IceConc", >> overwrite=TRUE, format="CDF", >> xname="Longitude", yname="Latitude")# class : RasterLayer # >> dimensions : 1328, 1264, 1678592 (nrow, ncol, ncell)# resolution : 6250, >> 6250 (x, y)# extent : -3950000, 3950000, -3950000, 4350000 (xmin, >> xmax, ymin, ymax)# coord. ref. : NA # data source : O:/Ahmed/r001.nc # names >> : IceConc # zvar : IceConc >> >> raster("O:/Ahmed/r001.nc")# class : RasterLayer # dimensions : 1328, >> 1264, 1678592 (nrow, ncol, ncell)# resolution : 6250, 6250 (x, y)# extent >> : -3950000, 3950000, -3950000, 4350000 (xmin, xmax, ymin, ymax)# >> coord. ref. : NA # data source : O:/Ahmed/r001.nc # names : IceConc # >> zvar : IceConc >> >> Any solution? >> >> N.B. I also sent the same question at stackoverflow >> <https://stackoverflow.com/questions/54593552/saving-r-raster-to-netcdf-nc-file-with-keeping-crs-information>, >> without a solution so far. >> >> Thanks >> >> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ >> *Dr. Ahmed El-Gabbas,* >> Ocean Acoustics Lab, >> Alfred-Wegener-Institut >> Helmholtz-Zentrum für Polar und Meeresforschung >> <image.png> >> My Website: https://elgabbas.github.io >> _______________________________________________ >> R-sig-Geo mailing list >> R-sig-Geo@r-project.org >> https://stat.ethz.ch/mailman/listinfo/r-sig-geo >> >> >> Ben Tupper >> Bigelow Laboratory for Ocean Sciences >> 60 Bigelow Drive, P.O. Box 380 >> East Boothbay, Maine 04544 >> http://www.bigelow.org >> >> Ecological Forecasting: https://eco.bigelow.org/ >> >> >> >> >> >> > > [[alternative HTML version deleted]] > > _______________________________________________ > R-sig-Geo mailing list > R-sig-Geo@r-project.org > https://stat.ethz.ch/mailman/listinfo/r-sig-geo Ben Tupper Bigelow Laboratory for Ocean Sciences 60 Bigelow Drive, P.O. Box 380 East Boothbay, Maine 04544 http://www.bigelow.org Ecological Forecasting: https://eco.bigelow.org/ _______________________________________________ R-sig-Geo mailing list R-sig-Geo@r-project.org https://stat.ethz.ch/mailman/listinfo/r-sig-geo